import { PublicKey } from "@solana/web3.js";
import BN from "bn.js";
import * as types from "../types";
export interface CollateralInfoFields {
    mint: PublicKey;
    lowerHeuristic: BN;
    upperHeuristic: BN;
    expHeuristic: BN;
    maxTwapDivergenceBps: BN;
    scopePriceIdTwap: BN;
    scopePriceChain: Array<number>;
    name: Array<number>;
    maxAgePriceSeconds: BN;
    maxAgeTwapSeconds: BN;
    maxIgnorableAmountAsReward: BN;
    disabled: number;
    padding0: Array<number>;
    padding: Array<BN>;
}
export interface CollateralInfoJSON {
    mint: string;
    lowerHeuristic: string;
    upperHeuristic: string;
    expHeuristic: string;
    maxTwapDivergenceBps: string;
    scopePriceIdTwap: string;
    scopePriceChain: Array<number>;
    name: Array<number>;
    maxAgePriceSeconds: string;
    maxAgeTwapSeconds: string;
    maxIgnorableAmountAsReward: string;
    disabled: number;
    padding0: Array<number>;
    padding: Array<string>;
}
export declare class CollateralInfo {
    readonly mint: PublicKey;
    readonly lowerHeuristic: BN;
    readonly upperHeuristic: BN;
    readonly expHeuristic: BN;
    readonly maxTwapDivergenceBps: BN;
    readonly scopePriceIdTwap: BN;
    readonly scopePriceChain: Array<number>;
    readonly name: Array<number>;
    readonly maxAgePriceSeconds: BN;
    readonly maxAgeTwapSeconds: BN;
    readonly maxIgnorableAmountAsReward: BN;
    readonly disabled: number;
    readonly padding0: Array<number>;
    readonly padding: Array<BN>;
    constructor(fields: CollateralInfoFields);
    static layout(property?: string): any;
    static fromDecoded(obj: any): types.CollateralInfo;
    static toEncodable(fields: CollateralInfoFields): {
        mint: PublicKey;
        lowerHeuristic: BN;
        upperHeuristic: BN;
        expHeuristic: BN;
        maxTwapDivergenceBps: BN;
        scopePriceIdTwap: BN;
        scopePriceChain: number[];
        name: number[];
        maxAgePriceSeconds: BN;
        maxAgeTwapSeconds: BN;
        maxIgnorableAmountAsReward: BN;
        disabled: number;
        padding0: number[];
        padding: BN[];
    };
    toJSON(): CollateralInfoJSON;
    static fromJSON(obj: CollateralInfoJSON): CollateralInfo;
    toEncodable(): {
        mint: PublicKey;
        lowerHeuristic: BN;
        upperHeuristic: BN;
        expHeuristic: BN;
        maxTwapDivergenceBps: BN;
        scopePriceIdTwap: BN;
        scopePriceChain: number[];
        name: number[];
        maxAgePriceSeconds: BN;
        maxAgeTwapSeconds: BN;
        maxIgnorableAmountAsReward: BN;
        disabled: number;
        padding0: number[];
        padding: BN[];
    };
}
