import { IComGithubKedacoreKedaV2ApisKedaV1alpha1AdvancedConfig } from "./AdvancedConfig.js";
import { IComGithubKedacoreKedaV2ApisKedaV1alpha1Fallback } from "./Fallback.js";
import { IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaleTarget } from "./ScaleTarget.js";
import { IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaleTriggers } from "./ScaleTriggers.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
 * ScaledObjectSpec is the spec for a ScaledObject resource
 */
export interface IScaledObjectSpec {
    "advanced"?: IComGithubKedacoreKedaV2ApisKedaV1alpha1AdvancedConfig;
    "cooldownPeriod"?: number;
    "fallback"?: IComGithubKedacoreKedaV2ApisKedaV1alpha1Fallback;
    "idleReplicaCount"?: number;
    "initialCooldownPeriod"?: number;
    "maxReplicaCount"?: number;
    "minReplicaCount"?: number;
    "pollingInterval"?: number;
    "scaleTargetRef": IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaleTarget;
    "triggers": Array<IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaleTriggers>;
}
/**
 * ScaledObjectSpec is the spec for a ScaledObject resource
 */
export declare class ScaledObjectSpec extends Model<IScaledObjectSpec> implements IScaledObjectSpec {
    "advanced"?: IComGithubKedacoreKedaV2ApisKedaV1alpha1AdvancedConfig;
    "cooldownPeriod"?: number;
    "fallback"?: IComGithubKedacoreKedaV2ApisKedaV1alpha1Fallback;
    "idleReplicaCount"?: number;
    "initialCooldownPeriod"?: number;
    "maxReplicaCount"?: number;
    "minReplicaCount"?: number;
    "pollingInterval"?: number;
    "scaleTargetRef": IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaleTarget;
    "triggers": Array<IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaleTriggers>;
    constructor(data?: ModelData<IScaledObjectSpec>);
}
export type { IScaledObjectSpec as IComGithubKedacoreKedaV2ApisKedaV1alpha1ScaledObjectSpec, ScaledObjectSpec as ComGithubKedacoreKedaV2ApisKedaV1alpha1ScaledObjectSpec };
