@orca-so/wavebreak
Version:
The wavebreak JS client for interacting with the wavebreak program.
30 lines (29 loc) • 1.46 kB
TypeScript
import { Address, Codec, Decoder, Encoder, GetDiscriminatedUnionVariant, GetDiscriminatedUnionVariantContent, ReadonlyUint8Array } from '@solana/kit';
import { PermissionSigner, PermissionSignerArgs } from '.';
export type PermissionMessage = {
__kind: "V1";
nonce: bigint;
consumerProgram: Address;
permissionSigner: PermissionSigner;
permissionSubject: Address;
validUntil: bigint;
permissionType: number;
instructionDiscriminators: Array<ReadonlyUint8Array>;
};
export type PermissionMessageArgs = {
__kind: "V1";
nonce: number | bigint;
consumerProgram: Address;
permissionSigner: PermissionSignerArgs;
permissionSubject: Address;
validUntil: number | bigint;
permissionType: number;
instructionDiscriminators: Array<ReadonlyUint8Array>;
};
export declare function getPermissionMessageEncoder(): Encoder<PermissionMessageArgs>;
export declare function getPermissionMessageDecoder(): Decoder<PermissionMessage>;
export declare function getPermissionMessageCodec(): Codec<PermissionMessageArgs, PermissionMessage>;
export declare function permissionMessage(kind: "V1", data: GetDiscriminatedUnionVariantContent<PermissionMessageArgs, "__kind", "V1">): GetDiscriminatedUnionVariant<PermissionMessageArgs, "__kind", "V1">;
export declare function isPermissionMessage<K extends PermissionMessage["__kind"]>(kind: K, value: PermissionMessage): value is PermissionMessage & {
__kind: K;
};