@frakt-protocol/frakt-sdk
Version:
Frakt SDK for interacting with frakt.xyz protocols
909 lines (908 loc) • 25.2 kB
TypeScript
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>>>[];
}>;