/// /// /// import { BeetStruct, FixableBeetStruct } from '@metaplex-foundation/beet'; import { PublicKey } from '@solana/web3.js'; import BigNumber from 'bignumber.js'; export declare enum VaultStatus { Active = 0, Finalized = 1, Reverted = 2 } export type ConditionnalVault = { buffer: Buffer; status: VaultStatus; settlementAuthority: PublicKey; underlyingTokenMint: PublicKey; underlyingTokenAccount: PublicKey; conditionalOnFinalizeTokenMint: PublicKey; conditionalOnRevertTokenMint: PublicKey; pdaBump: number; decimals: number; }; export declare const conditionnalVaultStruct: BeetStruct>; export type TwapOracle = { lastUpdatedSlot: BigNumber; lastPrice: BigNumber; lastObservation: BigNumber; aggregator: BigNumber; maxObservationChangePerUpdate: BigNumber; initialObservation: BigNumber; }; export declare const twapOracleStruct: BeetStruct>; export type Amm = { buffer: Buffer; bump: number; createdAtSlot: BigNumber; lpMint: PublicKey; baseMint: PublicKey; quoteMint: PublicKey; baseMintDecimals: number; quoteMintDecimals: number; baseAmount: BigNumber; quoteAmount: BigNumber; oracle: TwapOracle; }; export declare const ammStruct: BeetStruct>; export type Dao = { buffer: Buffer; treasuryPdaBump: number; treasury: PublicKey; tokenMint: PublicKey; usdcMint: PublicKey; proposalCount: number; passThresholdBps: number; slotsPerProposal: BigNumber; twapInitialObservation: BigNumber; twapMaxObservationChangePerUpdate: BigNumber; minQuoteFutarchicLiquidity: BigNumber; minBaseFutarchicLiquidity: BigNumber; }; export declare const daoStruct: BeetStruct>; export declare enum ProposalState { Pending = 0, Passed = 1, Failed = 2, Executed = 3 } export type ProposalAccount = { pubkey: PublicKey; isSigner: boolean; isWritable: boolean; }; export declare const proposalAccountStruct: BeetStruct>; export type ProposalInstruction = { programId: PublicKey; accounts: ProposalAccount[]; data: number[]; }; export declare const proposalInstructionStruct: FixableBeetStruct>; export type Proposal = { buffer: Buffer; number: number; proposer: PublicKey; descriptionUrl: number[]; slotEnqueued: BigNumber; state: ProposalState; instruction: ProposalInstruction; passAmm: PublicKey; failAmm: PublicKey; baseVault: PublicKey; quoteVault: PublicKey; dao: PublicKey; passLpTokensLocked: BigNumber; failLpTokensLocked: BigNumber; nonce: BigNumber; pdaBump: number; }; export declare const proposalStruct: FixableBeetStruct>; export type Launch = { buffer: Buffer; pdaBump: number; minimumRaiseAmount: BigNumber; launchAuthority: PublicKey; launchSigner: PublicKey; launchSignerPdaBump: number; launchUsdcVault: PublicKey; launchTokenVault: PublicKey; tokenMint: PublicKey; usdcMint: PublicKey; unixTimestampStarted: BigNumber; totalCommittedAmount: BigNumber; state: LaunchState; seqNum: BigNumber; secondsForLaunch: number; dao: PublicKey; daoTreasury: PublicKey; }; export declare const launchStruct: BeetStruct>; export declare enum LaunchState { Initialized = 0, Live = 1, Complete = 2, Refunding = 3 } export type FundingRecord = { buffer: Buffer; pdaBump: number; funder: PublicKey; launch: PublicKey; committedAmount: BigNumber; seqNum: BigNumber; }; export declare const fundingRecordStruct: BeetStruct>;