UNPKG

@orca-so/wavebreak

Version:

The wavebreak JS client for interacting with the wavebreak program.

47 lines (46 loc) 4.29 kB
import { Address, Codec, Decoder, Encoder, IAccountMeta, IAccountSignerMeta, IInstruction, IInstructionWithAccounts, IInstructionWithData, ReadonlyAccount, TransactionSigner, WritableAccount, WritableSignerAccount } from '@solana/kit'; import { WAVEBREAK_PROGRAM_ADDRESS } from '../programs'; import { PermissionMessage, PermissionMessageArgs, PermissionSignature, PermissionSignatureArgs } from '../types'; export declare const PERMISSION_REVOKE_DISCRIMINATOR = 5; export declare function getPermissionRevokeDiscriminatorBytes(): import('@solana/kit').ReadonlyUint8Array; export type PermissionRevokeInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountFunder extends string | IAccountMeta<string> = string, TAccountPermissionConfig extends string | IAccountMeta<string> = string, TAccountConsumedPermission extends string | IAccountMeta<string> = string, TAccountSystemProgram extends string | IAccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[ TAccountFunder extends string ? WritableSignerAccount<TAccountFunder> & IAccountSignerMeta<TAccountFunder> : TAccountFunder, TAccountPermissionConfig extends string ? ReadonlyAccount<TAccountPermissionConfig> : TAccountPermissionConfig, TAccountConsumedPermission extends string ? WritableAccount<TAccountConsumedPermission> : TAccountConsumedPermission, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, ...TRemainingAccounts ]>; export type PermissionRevokeInstructionData = { discriminator: number; permissionMessage: PermissionMessage; permissionSignature: PermissionSignature; }; export type PermissionRevokeInstructionDataArgs = { permissionMessage: PermissionMessageArgs; permissionSignature: PermissionSignatureArgs; }; export declare function getPermissionRevokeInstructionDataEncoder(): Encoder<PermissionRevokeInstructionDataArgs>; export declare function getPermissionRevokeInstructionDataDecoder(): Decoder<PermissionRevokeInstructionData>; export declare function getPermissionRevokeInstructionDataCodec(): Codec<PermissionRevokeInstructionDataArgs, PermissionRevokeInstructionData>; export type PermissionRevokeInput<TAccountFunder extends string = string, TAccountPermissionConfig extends string = string, TAccountConsumedPermission extends string = string, TAccountSystemProgram extends string = string> = { funder: TransactionSigner<TAccountFunder>; permissionConfig: Address<TAccountPermissionConfig>; consumedPermission: Address<TAccountConsumedPermission>; systemProgram?: Address<TAccountSystemProgram>; permissionMessage: PermissionRevokeInstructionDataArgs["permissionMessage"]; permissionSignature: PermissionRevokeInstructionDataArgs["permissionSignature"]; }; export declare function getPermissionRevokeInstruction<TAccountFunder extends string, TAccountPermissionConfig extends string, TAccountConsumedPermission extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof WAVEBREAK_PROGRAM_ADDRESS>(input: PermissionRevokeInput<TAccountFunder, TAccountPermissionConfig, TAccountConsumedPermission, TAccountSystemProgram>, config?: { programAddress?: TProgramAddress; }): PermissionRevokeInstruction<TProgramAddress, TAccountFunder, TAccountPermissionConfig, TAccountConsumedPermission, TAccountSystemProgram>; export type ParsedPermissionRevokeInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[]> = { programAddress: Address<TProgram>; accounts: { funder: TAccountMetas[0]; permissionConfig: TAccountMetas[1]; consumedPermission: TAccountMetas[2]; systemProgram: TAccountMetas[3]; }; data: PermissionRevokeInstructionData; }; export declare function parsePermissionRevokeInstruction<TProgram extends string, TAccountMetas extends readonly IAccountMeta[]>(instruction: IInstruction<TProgram> & IInstructionWithAccounts<TAccountMetas> & IInstructionWithData<Uint8Array>): ParsedPermissionRevokeInstruction<TProgram, TAccountMetas>;