import { TypeFn } from '../util'; import { ObjectKind } from './object-kind.prm'; import { SloTarget } from './slo-target.prm'; /** * Identifies an elasticity strategy kind/type. * * @param O The type of input data for the elasticity strategy (`ElasticityStrategySpec.sloOutputParams`). This must * match the type of output data of the SLO. * @param T (optional) The type of `SloTarget` that the elasticity strategy can operate on. * @param C (optional) The type of `staticConfig` that the elasticity strategy accepts. */ export declare class ElasticityStrategyKind> extends ObjectKind { /** * This property is needed to trigger type checking for the `O` parameter * when assigning an `ElasticityStrategyKind` to an `SloMappingSpec`. * DO NOT use this property in your code. * * It cannot be a private property, because then TypeScript would omit the type * in the .d.ts file that is shipped in the npm package. * * @private */ protected __sloOutputType: TypeFn; /** * This property is needed to trigger type checking for the `T` parameter * when assigning an `ElasticityStrategyKind` to an `SloMappingSpec`. * DO NOT use this property in your code. * * It cannot be a private property, because then TypeScript would omit the type * in the .d.ts file that is shipped in the npm package. * * @private */ protected __sloTargetType: TypeFn; /** * This property is needed to trigger type checking for the `C` parameter * when matching an `ElasticityStrategyKind` to an `ElasticityStrategyController`. * DO NOT use this property in your code. * * It cannot be a private property, because then TypeScript would omit the type * in the .d.ts file that is shipped in the npm package. * * @private */ protected __staticConfigType: TypeFn; constructor(initData?: Partial>); }