import { PublicKey } from '@solana/web3.js'; import type { AnchorProvider } from '@coral-xyz/anchor'; import type { DerivedAccounts, DerivedCompDefAccounts, BN } from './types'; export interface DeriveAccountsInput { programId: PublicKey; clusterOffset: number; computationOffset: BN; compDefOffset: Buffer | Uint8Array | string; } export declare function toBuffer(value: Buffer | Uint8Array | string): Buffer; export declare function deriveCoreAccounts(params: DeriveAccountsInput): DerivedAccounts; export interface DeriveCompDefAccountsInput { programId: PublicKey; /** The snake_case name of the computation definition (e.g. "flip", "vote"). */ compDefName: string; } /** * Derives the comp def PDA and LUT address needed for initCompDef instructions (v0.7.0+). * * Usage in your initCompDef instruction: * ```ts * const { compDefAccount, mxeAccount, addressLookupTable } = await deriveCompDefAccounts(provider, { * programId: program.programId, * compDefName: 'my_computation', * }); * * await program.methods.initMyCompDef() * .accounts({ compDefAccount, payer: wallet.publicKey, mxeAccount, addressLookupTable }) * .rpc(); * ``` */ export declare function deriveCompDefAccounts(provider: AnchorProvider, params: DeriveCompDefAccountsInput): Promise;