///
import { PublicKey, Connection } from "@solana/web3.js";
import BN from "bn.js";
export interface GlobalConfigFields {
emergencyMode: BN;
blockDeposit: BN;
blockInvest: BN;
blockWithdraw: BN;
blockCollectFees: BN;
blockCollectRewards: BN;
blockSwapRewards: BN;
blockSwapUnevenVaults: number;
blockEmergencySwap: number;
feesBps: BN;
scopeProgramId: PublicKey;
scopePriceId: PublicKey;
swapRewardsDiscountBps: Array;
actionsAuthority: PublicKey;
adminAuthority: PublicKey;
treasuryFeeVaults: Array;
tokenInfos: PublicKey;
blockLocalAdmin: BN;
minPerformanceFeeBps: BN;
padding: Array;
}
export interface GlobalConfigJSON {
emergencyMode: string;
blockDeposit: string;
blockInvest: string;
blockWithdraw: string;
blockCollectFees: string;
blockCollectRewards: string;
blockSwapRewards: string;
blockSwapUnevenVaults: number;
blockEmergencySwap: number;
feesBps: string;
scopeProgramId: string;
scopePriceId: string;
swapRewardsDiscountBps: Array;
actionsAuthority: string;
adminAuthority: string;
treasuryFeeVaults: Array;
tokenInfos: string;
blockLocalAdmin: string;
minPerformanceFeeBps: string;
padding: Array;
}
export declare class GlobalConfig {
readonly emergencyMode: BN;
readonly blockDeposit: BN;
readonly blockInvest: BN;
readonly blockWithdraw: BN;
readonly blockCollectFees: BN;
readonly blockCollectRewards: BN;
readonly blockSwapRewards: BN;
readonly blockSwapUnevenVaults: number;
readonly blockEmergencySwap: number;
readonly feesBps: BN;
readonly scopeProgramId: PublicKey;
readonly scopePriceId: PublicKey;
readonly swapRewardsDiscountBps: Array;
readonly actionsAuthority: PublicKey;
readonly adminAuthority: PublicKey;
readonly treasuryFeeVaults: Array;
readonly tokenInfos: PublicKey;
readonly blockLocalAdmin: BN;
readonly minPerformanceFeeBps: BN;
readonly padding: Array;
static readonly discriminator: Buffer;
static readonly layout: any;
constructor(fields: GlobalConfigFields);
static fetch(c: Connection, address: PublicKey): Promise;
static fetchMultiple(c: Connection, addresses: PublicKey[]): Promise>;
static decode(data: Buffer): GlobalConfig;
toJSON(): GlobalConfigJSON;
static fromJSON(obj: GlobalConfigJSON): GlobalConfig;
}