import { Address } from "@solana/kit";
import BN from "bn.js";
import * as types from "../types";
export interface CollateralInfoParamsFields {
    mint: Address;
    lowerHeuristic: BN;
    upperHeuristic: BN;
    expHeuristic: BN;
    maxTwapDivergenceBps: BN;
    scopeTwapPriceChain: Array<number>;
    scopePriceChain: Array<number>;
    name: Array<number>;
    maxAgePriceSeconds: BN;
    maxAgeTwapSeconds: BN;
    maxIgnorableAmountAsReward: BN;
    disabled: number;
    scopeStakingRateChain: Array<number>;
}
export interface CollateralInfoParamsJSON {
    mint: string;
    lowerHeuristic: string;
    upperHeuristic: string;
    expHeuristic: string;
    maxTwapDivergenceBps: string;
    scopeTwapPriceChain: Array<number>;
    scopePriceChain: Array<number>;
    name: Array<number>;
    maxAgePriceSeconds: string;
    maxAgeTwapSeconds: string;
    maxIgnorableAmountAsReward: string;
    disabled: number;
    scopeStakingRateChain: Array<number>;
}
export declare class CollateralInfoParams {
    readonly mint: Address;
    readonly lowerHeuristic: BN;
    readonly upperHeuristic: BN;
    readonly expHeuristic: BN;
    readonly maxTwapDivergenceBps: BN;
    readonly scopeTwapPriceChain: Array<number>;
    readonly scopePriceChain: Array<number>;
    readonly name: Array<number>;
    readonly maxAgePriceSeconds: BN;
    readonly maxAgeTwapSeconds: BN;
    readonly maxIgnorableAmountAsReward: BN;
    readonly disabled: number;
    readonly scopeStakingRateChain: Array<number>;
    constructor(fields: CollateralInfoParamsFields);
    static layout(property?: string): import("buffer-layout").Layout<unknown>;
    static fromDecoded(obj: any): types.CollateralInfoParams;
    static toEncodable(fields: CollateralInfoParamsFields): {
        mint: Address;
        lowerHeuristic: BN;
        upperHeuristic: BN;
        expHeuristic: BN;
        maxTwapDivergenceBps: BN;
        scopeTwapPriceChain: number[];
        scopePriceChain: number[];
        name: number[];
        maxAgePriceSeconds: BN;
        maxAgeTwapSeconds: BN;
        maxIgnorableAmountAsReward: BN;
        disabled: number;
        scopeStakingRateChain: number[];
    };
    toJSON(): CollateralInfoParamsJSON;
    static fromJSON(obj: CollateralInfoParamsJSON): CollateralInfoParams;
    toEncodable(): {
        mint: Address;
        lowerHeuristic: BN;
        upperHeuristic: BN;
        expHeuristic: BN;
        maxTwapDivergenceBps: BN;
        scopeTwapPriceChain: number[];
        scopePriceChain: number[];
        name: number[];
        maxAgePriceSeconds: BN;
        maxAgeTwapSeconds: BN;
        maxIgnorableAmountAsReward: BN;
        disabled: number;
        scopeStakingRateChain: number[];
    };
}
//# sourceMappingURL=CollateralInfoParams.d.ts.map