import { fetchEncodedAccount, fetchEncodedAccounts, Account, Address, EncodedAccount, FetchAccountConfig, FetchAccountsConfig, FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, 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; padding: ReadonlyUint8Array; }; export type PermissionConfigArgs = { consumerProgram: Address; allowedSigners: Array; padding?: ReadonlyUint8Array; }; export declare function getPermissionConfigEncoder(): FixedSizeEncoder; export declare function getPermissionConfigDecoder(): FixedSizeDecoder; export declare function getPermissionConfigCodec(): FixedSizeCodec; export declare function decodePermissionConfig(encodedAccount: EncodedAccount): Account; export declare function decodePermissionConfig(encodedAccount: MaybeEncodedAccount): MaybeAccount; export declare function fetchPermissionConfig(rpc: Parameters[0], address: Address, config?: FetchAccountConfig): Promise>; export declare function fetchMaybePermissionConfig(rpc: Parameters[0], address: Address, config?: FetchAccountConfig): Promise>; export declare function fetchAllPermissionConfig(rpc: Parameters[0], addresses: Array
, config?: FetchAccountsConfig): Promise[]>; export declare function fetchAllMaybePermissionConfig(rpc: Parameters[0], addresses: Array
, config?: FetchAccountsConfig): Promise[]>; export declare function getPermissionConfigSize(): number;