import { AppObject, AppObjectUC } from "@vived/core";
import { SerializedSystem } from "../../StateMachine";
export declare abstract class SerializeTransparentObjects extends AppObjectUC implements SerializedSystem {
    static readonly type = "SerializeTransparentObjects";
    name: string;
    abstract seriliziationVersion: number;
    abstract getSystemState(): object;
    abstract applySystemState(state: object, version: number, transitionDuration: number): void;
    abstract applyDefaultState(transitionDuration: number): void;
}
export declare function makeSerializeTransparentObjects(appObject: AppObject): SerializeTransparentObjects;
export declare class SerializeTransparentObjectsImp extends SerializeTransparentObjects {
    seriliziationVersion: number;
    getSystemState(): object;
    applySystemState(state: object, version: number, durationS: number): Promise<void> | void;
    private applyStateV1;
    applyDefaultState(): void;
    constructor(appObj: AppObject);
}
export interface SerializedTransparentObjectsV1 {
    transparentObjects: string[];
}
//# sourceMappingURL=SerializeTransparentObjects.d.ts.map