import '../../assert/js/assert.js';
import '../../globals.js';
import TinyProperty from './TinyProperty.js';
import TReadOnlyProperty from './TReadOnlyProperty.js';
export default class TinyOverrideProperty<T> extends TinyProperty<T> {
    isOverridden: boolean;
    private _targetProperty;
    private readonly _targetListener;
    constructor(targetProperty: TReadOnlyProperty<T>);
    set targetProperty(targetProperty: TReadOnlyProperty<T>);
    setTargetProperty(targetProperty: TReadOnlyProperty<T>): void;
    /**
     * Remove the "overridden" nature of this Property, so that it takes on the appearance of the targetProperty
     */
    clearOverride(): void;
    get(): T;
    set(value: T): void;
    setPropertyValue(value: T): void;
    protected equalsValue(value: T): boolean;
    private onTargetPropertyChange;
    notifyListeners(oldValue: T): void;
    dispose(): void;
}
//# sourceMappingURL=TinyOverrideProperty.d.ts.map