import { PublicKey, TransactionInstruction } from '@solana/web3.js'; import BN from 'bn.js'; export declare function governanceCreateTokenOwnerRecord(programId: PublicKey, realm: PublicKey, governingTokenOwner: PublicKey, governingTokenMint: PublicKey, payer: PublicKey, tokenOwnerRecordAddress: PublicKey): TransactionInstruction; export declare function voterStakeRegistryCreateVoter(programId: PublicKey, registrar: PublicKey, voter: PublicKey, voterWeightRecord: PublicKey, voterAuthority: PublicKey, payer: PublicKey, voterBump: number, voterWeightRecordBump: number): TransactionInstruction; export declare function voterStakeRegistryCreateDepositEntry(programId: PublicKey, registrar: PublicKey, voter: PublicKey, voterVault: PublicKey, voterAuthority: PublicKey, payer: PublicKey, depositMint: PublicKey, depositEntryIndex: number, kind: number, startTs: BN | undefined, periods: number, allowClawback: boolean): TransactionInstruction; export declare function voterStakeRegistryDeposit(programId: PublicKey, registrar: PublicKey, voter: PublicKey, voterVault: PublicKey, depositToken: PublicKey, depositAuthority: PublicKey, userStakerInfoV2: PublicKey, pool: PublicKey, votingMint: PublicKey, votingMintAuthority: PublicKey, stakeProgramId: PublicKey, depositEntryIndex: number, amount: BN): TransactionInstruction; export declare function voterStakeRegistryUpdateVoterWeightRecord(programId: PublicKey, registrar: PublicKey, voter: PublicKey, voterWeightRecord: PublicKey): TransactionInstruction; export declare function voterStakeRegistryWithdraw(programId: PublicKey, registrar: PublicKey, voter: PublicKey, voterAuthority: PublicKey, tokenOwnerRecord: PublicKey, voterWeightRecord: PublicKey, vault: PublicKey, destination: PublicKey, userStakerInfoV2: PublicKey, pool: PublicKey, votingMint: PublicKey, votingMintAuthority: PublicKey, stakeProgramId: PublicKey, depositEntryIndex: number, amount: BN): TransactionInstruction;