Kit
Interfaces

Account

Contains all the information relevant to a Solana account. It includes the account's address and data, as well as the properties of BaseAccount.

Example

// Encoded
const myEncodedAccount: Account<Uint8Array, '1234..5678'> = {
    address: address('1234..5678'),
    data: new Uint8Array([1, 2, 3]),
    executable: false,
    lamports: lamports(1_000_000_000n),
    programAddress: address('1111..1111'),
    space: 42n,
};
 
// Decoded
type MyAccountData = { name: string; age: number };
const myDecodedAccount: Account<MyAccountData, '1234..5678'> = {
    address: address('1234..5678'),
    data: { name: 'Alice', age: 30 },
    executable: false,
    lamports: lamports(1_000_000_000n),
    programAddress: address('1111..1111'),
    space: 42n,
};

Type Parameters

Type ParameterDefault typeDescription
TData extends Uint8Array | object-The nature of this account's data. It can be represented as either a Uint8Array – meaning the account is encoded – or a custom data type – meaning the account is decoded.
TAddress extends stringstringSupply a string literal to define an account having a particular address.

Properties

PropertyModifierType
addressreadonlyAddress<TAddress>
datareadonlyTData
executablereadonlyboolean
lamportsreadonlyLamports
programAddressreadonlyAddress
spacereadonlybigint

On this page