/**
 *
 *
 * @class ApplicationParams
 */
export declare class ApplicationParams {
    /**
     *
     * Creates a ApplicationParams object using a JSON string
     * @param {String} json - JSON string.
     * @returns {ApplicationParams} - ApplicationParams object.
     * @memberof ApplicationParams
     */
    static fromJSON(json: string): ApplicationParams;
    readonly unstakingTime: string;
    readonly maxApplications: BigInt;
    readonly appStakeMin: BigInt;
    readonly baseRelaysPerPokt: BigInt;
    readonly stabilityAdjustment: BigInt;
    readonly participationRateOn: boolean;
    /**
     * Application Params.
     * @constructor
     * @param {string} unstakingTime - Unstaking timestamp.
     * @param {BigInt} maxApplications - Max applications count.
     * @param {BigInt} appStakeMin - Minimum amount an app can stake.
     * @param {BigInt} baseRelaysPerPokt - Amount of relays per Pocket tokens.
     * @param {BigInt} stabilityAdjustment - Stability adjustment variable.
     * @param {boolean} participationRateOn - True or false if participation rate is on.
     */
    constructor(unstakingTime: string, maxApplications: BigInt, appStakeMin: BigInt, baseRelaysPerPokt: BigInt, stabilityAdjustment: BigInt, participationRateOn: boolean);
    /**
     *
     * Creates a JSON object with the ApplicationParams properties
     * @returns {JSON} - JSON Object.
     * @memberof ApplicationParams
     */
    toJSON(): {
        app_stake_minimum: number;
        base_relays_per_pokt: number;
        max_applications: number;
        participation_rate_on: boolean;
        stability_adjustment: number;
        unstaking_time: string;
    };
    /**
     *
     * Check if the ApplicationParams object is valid
     * @returns {boolean} - True or false.
     * @memberof ApplicationParams
     */
    isValid(): boolean;
}
