import { ContainerProperties, createContainerState } from '../components/container.js';
import { AllOptionalProperties } from '../properties/default.js';
import { Parent } from './utils.js';
import { ThreeEventMap } from '../events.js';
export declare class Container<T = {}, EM extends ThreeEventMap = ThreeEventMap> extends Parent<T> {
    private readonly styleSignal;
    private readonly propertiesSignal;
    private readonly defaultPropertiesSignal;
    private readonly parentContextSignal;
    private readonly unsubscribe;
    internals: ReturnType<typeof createContainerState>;
    constructor(properties?: ContainerProperties<EM>, defaultProperties?: AllOptionalProperties);
    getComputedProperty<K extends keyof ContainerProperties<EM>>(key: K): ContainerProperties<EM>[K] | undefined;
    getStyle(): undefined | Readonly<ContainerProperties<EM>>;
    setStyle(style: ContainerProperties<EM> | undefined, replace?: boolean): void;
    setProperties(properties: ContainerProperties<EM> | undefined): void;
    setDefaultProperties(properties: AllOptionalProperties): void;
    destroy(): void;
}
