import { IDynamicProperty } from '../dynamicProperty';
import { DynamicProperties } from "./dynamicProperties";
import * as rx from 'rx';
export declare class ChainedDynamicProperty<T> implements IDynamicProperty<T> {
    private _fallbackProperties;
    private _activeProperty;
    private _propertiesManager;
    private _defaultValue;
    private disposed;
    private _reset;
    private _propertyChanged;
    readonly propertyChanged: rx.Observable<IDynamicProperty<T>>;
    readonly name: string;
    constructor(manager: DynamicProperties, properties: Array<string>, defaultValue?: any);
    reset(): void;
    private onPropertyChanged();
    readonly value: T;
    set(value: T): void;
    dispose(): void;
}
