UNPKG

@orca-so/wavebreak

Version:

The wavebreak JS client for interacting with the wavebreak program.

47 lines (46 loc) 4.48 kB
import { AccountMeta, AccountSignerMeta, Address, FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, Instruction, InstructionWithAccounts, InstructionWithData, ReadonlyAccount, ReadonlyUint8Array, TransactionSigner, WritableAccount, WritableSignerAccount } from '@solana/kit'; import { WAVEBREAK_PROGRAM_ADDRESS } from '../programs'; import { PermissionSigner, PermissionSignerArgs } from '../types'; export declare const PERMISSION_CONFIG_INITIALIZE_DISCRIMINATOR = 2; export declare function getPermissionConfigInitializeDiscriminatorBytes(): ReadonlyUint8Array; export type PermissionConfigInitializeInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountPermissionConfig extends string | AccountMeta<string> = string, TAccountAuthorityConfig extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[ TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority, TAccountPermissionConfig extends string ? WritableAccount<TAccountPermissionConfig> : TAccountPermissionConfig, TAccountAuthorityConfig extends string ? ReadonlyAccount<TAccountAuthorityConfig> : TAccountAuthorityConfig, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, ...TRemainingAccounts ]>; export type PermissionConfigInitializeInstructionData = { discriminator: number; permissionAuthority: PermissionSigner; consumerProgram: Address; }; export type PermissionConfigInitializeInstructionDataArgs = { permissionAuthority: PermissionSignerArgs; consumerProgram: Address; }; export declare function getPermissionConfigInitializeInstructionDataEncoder(): FixedSizeEncoder<PermissionConfigInitializeInstructionDataArgs>; export declare function getPermissionConfigInitializeInstructionDataDecoder(): FixedSizeDecoder<PermissionConfigInitializeInstructionData>; export declare function getPermissionConfigInitializeInstructionDataCodec(): FixedSizeCodec<PermissionConfigInitializeInstructionDataArgs, PermissionConfigInitializeInstructionData>; export type PermissionConfigInitializeInput<TAccountAuthority extends string = string, TAccountPermissionConfig extends string = string, TAccountAuthorityConfig extends string = string, TAccountSystemProgram extends string = string> = { authority: TransactionSigner<TAccountAuthority>; permissionConfig: Address<TAccountPermissionConfig>; authorityConfig: Address<TAccountAuthorityConfig>; systemProgram?: Address<TAccountSystemProgram>; permissionAuthority: PermissionConfigInitializeInstructionDataArgs["permissionAuthority"]; consumerProgram: PermissionConfigInitializeInstructionDataArgs["consumerProgram"]; }; export declare function getPermissionConfigInitializeInstruction<TAccountAuthority extends string, TAccountPermissionConfig extends string, TAccountAuthorityConfig extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof WAVEBREAK_PROGRAM_ADDRESS>(input: PermissionConfigInitializeInput<TAccountAuthority, TAccountPermissionConfig, TAccountAuthorityConfig, TAccountSystemProgram>, config?: { programAddress?: TProgramAddress; }): PermissionConfigInitializeInstruction<TProgramAddress, TAccountAuthority, TAccountPermissionConfig, TAccountAuthorityConfig, TAccountSystemProgram>; export type ParsedPermissionConfigInitializeInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = { programAddress: Address<TProgram>; accounts: { authority: TAccountMetas[0]; permissionConfig: TAccountMetas[1]; authorityConfig: TAccountMetas[2]; systemProgram: TAccountMetas[3]; }; data: PermissionConfigInitializeInstructionData; }; export declare function parsePermissionConfigInitializeInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedPermissionConfigInitializeInstruction<TProgram, TAccountMetas>;