UNPKG

@orca-so/wavebreak

Version:

The wavebreak JS client for interacting with the wavebreak program.

26 lines (25 loc) 2.36 kB
import { fetchEncodedAccount, fetchEncodedAccounts, Account, Address, Codec, Decoder, EncodedAccount, Encoder, FetchAccountConfig, FetchAccountsConfig, MaybeAccount, MaybeEncodedAccount, ReadonlyUint8Array } from '@solana/kit'; import { AccountDiscriminator, PermissionSigner, PermissionSignerArgs } from '../types'; export declare const PERMISSION_CONFIG_DISCRIMINATOR = AccountDiscriminator.PermissionConfig; export declare function getPermissionConfigDiscriminatorBytes(): ReadonlyUint8Array; export type PermissionConfig = { discriminator: AccountDiscriminator; consumerProgram: Address; allowedSigners: Array<PermissionSigner>; padding: ReadonlyUint8Array; }; export type PermissionConfigArgs = { consumerProgram: Address; allowedSigners: Array<PermissionSignerArgs>; padding?: ReadonlyUint8Array; }; export declare function getPermissionConfigEncoder(): Encoder<PermissionConfigArgs>; export declare function getPermissionConfigDecoder(): Decoder<PermissionConfig>; export declare function getPermissionConfigCodec(): Codec<PermissionConfigArgs, PermissionConfig>; export declare function decodePermissionConfig<TAddress extends string = string>(encodedAccount: EncodedAccount<TAddress>): Account<PermissionConfig, TAddress>; export declare function decodePermissionConfig<TAddress extends string = string>(encodedAccount: MaybeEncodedAccount<TAddress>): MaybeAccount<PermissionConfig, TAddress>; export declare function fetchPermissionConfig<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<Account<PermissionConfig, TAddress>>; export declare function fetchMaybePermissionConfig<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<MaybeAccount<PermissionConfig, TAddress>>; export declare function fetchAllPermissionConfig(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<Account<PermissionConfig>[]>; export declare function fetchAllMaybePermissionConfig(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<MaybeAccount<PermissionConfig>[]>; export declare function getPermissionConfigSize(): number;