import * as anchor from '@project-serum/anchor';
import { PublicKey, Connection } from '@solana/web3.js';
export { Provider, Program } from '@project-serum/anchor';
export declare function getAllProgramAccounts(programId: PublicKey, connection: Connection): Promise<{
    communityPools: anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
        name: "boardEntry";
        type: {
            kind: "struct";
            fields: [{
                name: "entryholder";
                type: "publicKey";
            }, {
                name: "totalScore";
                type: "u64";
            }, {
                name: "scoreToHarvest";
                type: "u64";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "message";
                type: "string";
            }];
        };
    } | {
        name: "communityPool";
        type: {
            kind: "struct";
            fields: [{
                name: "tokenProgram";
                type: "publicKey";
            }, {
                name: "fractionMint";
                type: "publicKey";
            }, {
                name: "authority";
                type: "publicKey";
            }, {
                name: "fractionsSupply";
                type: "u64";
            }, {
                name: "createdAt";
                type: "u64";
            }, {
                name: "tokenTypeCount";
                type: "u64";
            }, {
                name: "state";
                type: {
                    defined: "VaultState";
                };
            }];
        };
    } | {
        name: "feeConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositFeeAdmin";
                type: "u64";
            }, {
                name: "depositFeePool";
                type: "u64";
            }, {
                name: "getLotteryFeeAdmin";
                type: "u64";
            }, {
                name: "getLotteryFeePool";
                type: "u64";
            }];
        };
    } | {
        name: "poolConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "vaultOwnerPda";
                type: "publicKey";
            }, {
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "vaultTokenAccount";
                type: "publicKey";
            }, {
                name: "poolVaultBalance";
                type: "u64";
            }];
        };
    } | {
        name: "leaderboardRewardAccount";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositReward";
                type: "u64";
            }, {
                name: "withdrawReward";
                type: "u64";
            }];
        };
    } | {
        name: "lotteryTicket";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "ticketHolder";
                type: "publicKey";
            }, {
                name: "winningSafetyBox";
                type: "publicKey";
            }, {
                name: "lotteryTicketState";
                type: {
                    defined: "LotteryTicketState";
                };
            }];
        };
    } | {
        name: "permission";
        type: {
            kind: "struct";
            fields: [{
                name: "programPubkey";
                type: "publicKey";
            }, {
                name: "expiration";
                type: "u64";
            }, {
                name: "canAddScore";
                type: "bool";
            }, {
                name: "canHarvestScore";
                type: "bool";
            }];
        };
    } | {
        name: "poolWhitelist";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "whitelistedAddress";
                type: "publicKey";
            }, {
                name: "whitelistType";
                type: {
                    defined: "WhitelistType";
                };
            }];
        };
    } | {
        name: "safetyDepositBox";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "storeNftTokenAccount";
                type: "publicKey";
            }, {
                name: "safetyBoxState";
                type: {
                    defined: "SafetyBoxState";
                };
            }];
        };
    }, anchor.IdlTypes<import("../contract_model/types/community_pools_anchor").CommunityPoolsAnchor>>>[];
    lotteryTickets: anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
        name: "boardEntry";
        type: {
            kind: "struct";
            fields: [{
                name: "entryholder";
                type: "publicKey";
            }, {
                name: "totalScore";
                type: "u64";
            }, {
                name: "scoreToHarvest";
                type: "u64";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "message";
                type: "string";
            }];
        };
    } | {
        name: "communityPool";
        type: {
            kind: "struct";
            fields: [{
                name: "tokenProgram";
                type: "publicKey";
            }, {
                name: "fractionMint";
                type: "publicKey";
            }, {
                name: "authority";
                type: "publicKey";
            }, {
                name: "fractionsSupply";
                type: "u64";
            }, {
                name: "createdAt";
                type: "u64";
            }, {
                name: "tokenTypeCount";
                type: "u64";
            }, {
                name: "state";
                type: {
                    defined: "VaultState";
                };
            }];
        };
    } | {
        name: "feeConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositFeeAdmin";
                type: "u64";
            }, {
                name: "depositFeePool";
                type: "u64";
            }, {
                name: "getLotteryFeeAdmin";
                type: "u64";
            }, {
                name: "getLotteryFeePool";
                type: "u64";
            }];
        };
    } | {
        name: "poolConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "vaultOwnerPda";
                type: "publicKey";
            }, {
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "vaultTokenAccount";
                type: "publicKey";
            }, {
                name: "poolVaultBalance";
                type: "u64";
            }];
        };
    } | {
        name: "leaderboardRewardAccount";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositReward";
                type: "u64";
            }, {
                name: "withdrawReward";
                type: "u64";
            }];
        };
    } | {
        name: "lotteryTicket";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "ticketHolder";
                type: "publicKey";
            }, {
                name: "winningSafetyBox";
                type: "publicKey";
            }, {
                name: "lotteryTicketState";
                type: {
                    defined: "LotteryTicketState";
                };
            }];
        };
    } | {
        name: "permission";
        type: {
            kind: "struct";
            fields: [{
                name: "programPubkey";
                type: "publicKey";
            }, {
                name: "expiration";
                type: "u64";
            }, {
                name: "canAddScore";
                type: "bool";
            }, {
                name: "canHarvestScore";
                type: "bool";
            }];
        };
    } | {
        name: "poolWhitelist";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "whitelistedAddress";
                type: "publicKey";
            }, {
                name: "whitelistType";
                type: {
                    defined: "WhitelistType";
                };
            }];
        };
    } | {
        name: "safetyDepositBox";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "storeNftTokenAccount";
                type: "publicKey";
            }, {
                name: "safetyBoxState";
                type: {
                    defined: "SafetyBoxState";
                };
            }];
        };
    }, anchor.IdlTypes<import("../contract_model/types/community_pools_anchor").CommunityPoolsAnchor>>>[];
    poolWhitelists: anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
        name: "boardEntry";
        type: {
            kind: "struct";
            fields: [{
                name: "entryholder";
                type: "publicKey";
            }, {
                name: "totalScore";
                type: "u64";
            }, {
                name: "scoreToHarvest";
                type: "u64";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "message";
                type: "string";
            }];
        };
    } | {
        name: "communityPool";
        type: {
            kind: "struct";
            fields: [{
                name: "tokenProgram";
                type: "publicKey";
            }, {
                name: "fractionMint";
                type: "publicKey";
            }, {
                name: "authority";
                type: "publicKey";
            }, {
                name: "fractionsSupply";
                type: "u64";
            }, {
                name: "createdAt";
                type: "u64";
            }, {
                name: "tokenTypeCount";
                type: "u64";
            }, {
                name: "state";
                type: {
                    defined: "VaultState";
                };
            }];
        };
    } | {
        name: "feeConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositFeeAdmin";
                type: "u64";
            }, {
                name: "depositFeePool";
                type: "u64";
            }, {
                name: "getLotteryFeeAdmin";
                type: "u64";
            }, {
                name: "getLotteryFeePool";
                type: "u64";
            }];
        };
    } | {
        name: "poolConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "vaultOwnerPda";
                type: "publicKey";
            }, {
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "vaultTokenAccount";
                type: "publicKey";
            }, {
                name: "poolVaultBalance";
                type: "u64";
            }];
        };
    } | {
        name: "leaderboardRewardAccount";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositReward";
                type: "u64";
            }, {
                name: "withdrawReward";
                type: "u64";
            }];
        };
    } | {
        name: "lotteryTicket";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "ticketHolder";
                type: "publicKey";
            }, {
                name: "winningSafetyBox";
                type: "publicKey";
            }, {
                name: "lotteryTicketState";
                type: {
                    defined: "LotteryTicketState";
                };
            }];
        };
    } | {
        name: "permission";
        type: {
            kind: "struct";
            fields: [{
                name: "programPubkey";
                type: "publicKey";
            }, {
                name: "expiration";
                type: "u64";
            }, {
                name: "canAddScore";
                type: "bool";
            }, {
                name: "canHarvestScore";
                type: "bool";
            }];
        };
    } | {
        name: "poolWhitelist";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "whitelistedAddress";
                type: "publicKey";
            }, {
                name: "whitelistType";
                type: {
                    defined: "WhitelistType";
                };
            }];
        };
    } | {
        name: "safetyDepositBox";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "storeNftTokenAccount";
                type: "publicKey";
            }, {
                name: "safetyBoxState";
                type: {
                    defined: "SafetyBoxState";
                };
            }];
        };
    }, anchor.IdlTypes<import("../contract_model/types/community_pools_anchor").CommunityPoolsAnchor>>>[];
    safetyDepositBoxes: anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
        name: "boardEntry";
        type: {
            kind: "struct";
            fields: [{
                name: "entryholder";
                type: "publicKey";
            }, {
                name: "totalScore";
                type: "u64";
            }, {
                name: "scoreToHarvest";
                type: "u64";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "message";
                type: "string";
            }];
        };
    } | {
        name: "communityPool";
        type: {
            kind: "struct";
            fields: [{
                name: "tokenProgram";
                type: "publicKey";
            }, {
                name: "fractionMint";
                type: "publicKey";
            }, {
                name: "authority";
                type: "publicKey";
            }, {
                name: "fractionsSupply";
                type: "u64";
            }, {
                name: "createdAt";
                type: "u64";
            }, {
                name: "tokenTypeCount";
                type: "u64";
            }, {
                name: "state";
                type: {
                    defined: "VaultState";
                };
            }];
        };
    } | {
        name: "feeConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositFeeAdmin";
                type: "u64";
            }, {
                name: "depositFeePool";
                type: "u64";
            }, {
                name: "getLotteryFeeAdmin";
                type: "u64";
            }, {
                name: "getLotteryFeePool";
                type: "u64";
            }];
        };
    } | {
        name: "poolConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "vaultOwnerPda";
                type: "publicKey";
            }, {
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "vaultTokenAccount";
                type: "publicKey";
            }, {
                name: "poolVaultBalance";
                type: "u64";
            }];
        };
    } | {
        name: "leaderboardRewardAccount";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositReward";
                type: "u64";
            }, {
                name: "withdrawReward";
                type: "u64";
            }];
        };
    } | {
        name: "lotteryTicket";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "ticketHolder";
                type: "publicKey";
            }, {
                name: "winningSafetyBox";
                type: "publicKey";
            }, {
                name: "lotteryTicketState";
                type: {
                    defined: "LotteryTicketState";
                };
            }];
        };
    } | {
        name: "permission";
        type: {
            kind: "struct";
            fields: [{
                name: "programPubkey";
                type: "publicKey";
            }, {
                name: "expiration";
                type: "u64";
            }, {
                name: "canAddScore";
                type: "bool";
            }, {
                name: "canHarvestScore";
                type: "bool";
            }];
        };
    } | {
        name: "poolWhitelist";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "whitelistedAddress";
                type: "publicKey";
            }, {
                name: "whitelistType";
                type: {
                    defined: "WhitelistType";
                };
            }];
        };
    } | {
        name: "safetyDepositBox";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "storeNftTokenAccount";
                type: "publicKey";
            }, {
                name: "safetyBoxState";
                type: {
                    defined: "SafetyBoxState";
                };
            }];
        };
    }, anchor.IdlTypes<import("../contract_model/types/community_pools_anchor").CommunityPoolsAnchor>>>[];
    boardEntrys: import("./../contract_model/accounts").BoardEntryView[];
    poolConfigs: import("./../contract_model/accounts").PoolConfigView[];
    permissions: import("./../contract_model/accounts").PermissionView[];
    feeConfig: anchor.ProgramAccount<import("@project-serum/anchor/dist/cjs/program/namespace/types").TypeDef<{
        name: "boardEntry";
        type: {
            kind: "struct";
            fields: [{
                name: "entryholder";
                type: "publicKey";
            }, {
                name: "totalScore";
                type: "u64";
            }, {
                name: "scoreToHarvest";
                type: "u64";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "message";
                type: "string";
            }];
        };
    } | {
        name: "communityPool";
        type: {
            kind: "struct";
            fields: [{
                name: "tokenProgram";
                type: "publicKey";
            }, {
                name: "fractionMint";
                type: "publicKey";
            }, {
                name: "authority";
                type: "publicKey";
            }, {
                name: "fractionsSupply";
                type: "u64";
            }, {
                name: "createdAt";
                type: "u64";
            }, {
                name: "tokenTypeCount";
                type: "u64";
            }, {
                name: "state";
                type: {
                    defined: "VaultState";
                };
            }];
        };
    } | {
        name: "feeConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositFeeAdmin";
                type: "u64";
            }, {
                name: "depositFeePool";
                type: "u64";
            }, {
                name: "getLotteryFeeAdmin";
                type: "u64";
            }, {
                name: "getLotteryFeePool";
                type: "u64";
            }];
        };
    } | {
        name: "poolConfig";
        type: {
            kind: "struct";
            fields: [{
                name: "vaultOwnerPda";
                type: "publicKey";
            }, {
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "vaultTokenAccount";
                type: "publicKey";
            }, {
                name: "poolVaultBalance";
                type: "u64";
            }];
        };
    } | {
        name: "leaderboardRewardAccount";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "depositReward";
                type: "u64";
            }, {
                name: "withdrawReward";
                type: "u64";
            }];
        };
    } | {
        name: "lotteryTicket";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "ticketHolder";
                type: "publicKey";
            }, {
                name: "winningSafetyBox";
                type: "publicKey";
            }, {
                name: "lotteryTicketState";
                type: {
                    defined: "LotteryTicketState";
                };
            }];
        };
    } | {
        name: "permission";
        type: {
            kind: "struct";
            fields: [{
                name: "programPubkey";
                type: "publicKey";
            }, {
                name: "expiration";
                type: "u64";
            }, {
                name: "canAddScore";
                type: "bool";
            }, {
                name: "canHarvestScore";
                type: "bool";
            }];
        };
    } | {
        name: "poolWhitelist";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "whitelistedAddress";
                type: "publicKey";
            }, {
                name: "whitelistType";
                type: {
                    defined: "WhitelistType";
                };
            }];
        };
    } | {
        name: "safetyDepositBox";
        type: {
            kind: "struct";
            fields: [{
                name: "communityPool";
                type: "publicKey";
            }, {
                name: "nftMint";
                type: "publicKey";
            }, {
                name: "storeNftTokenAccount";
                type: "publicKey";
            }, {
                name: "safetyBoxState";
                type: {
                    defined: "SafetyBoxState";
                };
            }];
        };
    }, anchor.IdlTypes<import("../contract_model/types/community_pools_anchor").CommunityPoolsAnchor>>>[];
}>;
