import { TypedParam } from './_Base';
import { FloatParam } from './Float';
import { ParamType } from '../poly/ParamType';
import { ParamInitValueSerializedTypeMap } from './types/ParamInitValueSerializedTypeMap';
import { ParamInitValuesTypeMap } from './types/ParamInitValuesTypeMap';
export declare abstract class TypedMultipleParam<T extends ParamType> extends TypedParam<T> {
    private _components_contructor;
    protected _components: FloatParam[];
    private _componentsCount;
    get components(): FloatParam[];
    isNumeric(): boolean;
    isDefault(): boolean;
    rawInput(): ParamInitValueSerializedTypeMap[T];
    rawInputSerialized(): ParamInitValueSerializedTypeMap[T];
    protected _copyValue(param: TypedMultipleParam<T>): void;
    initComponents(): void;
    protected processComputation(): Promise<void>;
    abstract setValueFromComponents(): void;
    hasExpression(): boolean;
    private computeComponents;
    protected _prefilterInvalidRawInput(raw_input: any): ParamInitValuesTypeMap[T];
    protected processRawInput(): void;
}
