///
import { PublicKey } from "@solana/web3.js";
import { CredixPassConfig, CredixPassFlagsConfig } from "../config";
import { CredixPass as IDLCredixPass } from "../idl/idl.types";
import { Market } from "./Market";
import { WithdrawCap } from "./WithdrawCap";
export declare class CredixPass {
private programVersion;
address: PublicKey;
market: Market;
holder: PublicKey;
constructor(credixPass: IDLCredixPass, address: PublicKey, market: Market, holder: PublicKey);
isSet(flag: number): boolean;
get isBorrower(): boolean;
get isInvestor(): boolean;
get isActive(): boolean;
get isMultisig(): boolean;
get isMarketManager(): boolean;
get isPassIssuer(): boolean;
get withdrawalFeeDisabled(): boolean;
get releaseTimestamp(): number;
get bypassWithdrawEpochs(): boolean;
get withdrawCap(): WithdrawCap | null;
get canCreateReceivable(): boolean;
get canFundReceivable(): boolean;
get isCredixAdminPassIssuer(): boolean;
get canCreateWithdrawRequestForInvestor(): boolean;
update(credixPassConfig: CredixPassConfig): Promise;
static generatePDA(holder: PublicKey, market: Market): [PublicKey, number];
static configToFlags(config: CredixPassFlagsConfig): number;
}
//# sourceMappingURL=CredixPass.d.ts.map