import BN from "bn.js";
import * as types from "../types";
export interface FixedTermBorrowRolloverConfigFields {
    autoRolloverEnabled: number;
    openTermAllowed: number;
    migrationToFixedEnabled: number;
    alignmentPadding: Array<number>;
    maxBorrowRateBps: number;
    minDebtTermSeconds: BN;
}
export interface FixedTermBorrowRolloverConfigJSON {
    autoRolloverEnabled: number;
    openTermAllowed: number;
    migrationToFixedEnabled: number;
    alignmentPadding: Array<number>;
    maxBorrowRateBps: number;
    minDebtTermSeconds: string;
}
export declare class FixedTermBorrowRolloverConfig {
    readonly autoRolloverEnabled: number;
    readonly openTermAllowed: number;
    readonly migrationToFixedEnabled: number;
    readonly alignmentPadding: Array<number>;
    readonly maxBorrowRateBps: number;
    readonly minDebtTermSeconds: BN;
    constructor(fields: FixedTermBorrowRolloverConfigFields);
    static layout(property?: string): import("buffer-layout").Layout<unknown>;
    static fromDecoded(obj: any): types.FixedTermBorrowRolloverConfig;
    static toEncodable(fields: FixedTermBorrowRolloverConfigFields): {
        autoRolloverEnabled: number;
        openTermAllowed: number;
        migrationToFixedEnabled: number;
        alignmentPadding: number[];
        maxBorrowRateBps: number;
        minDebtTermSeconds: BN;
    };
    toJSON(): FixedTermBorrowRolloverConfigJSON;
    static fromJSON(obj: FixedTermBorrowRolloverConfigJSON): FixedTermBorrowRolloverConfig;
    toEncodable(): {
        autoRolloverEnabled: number;
        openTermAllowed: number;
        migrationToFixedEnabled: number;
        alignmentPadding: number[];
        maxBorrowRateBps: number;
        minDebtTermSeconds: BN;
    };
}
//# sourceMappingURL=FixedTermBorrowRolloverConfig.d.ts.map