import { AppObject, AppObjectUC } from "@vived/core";
import { SerializedSystem } from "../../StateMachine";
export declare abstract class SerializeCustomLabels extends AppObjectUC implements SerializedSystem {
    static readonly type = "SerializeCustomLabels";
    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 makeSerializeCustomLabels(appObject: AppObject): SerializeCustomLabels;
export declare class SerializeCustomLabelsImp extends SerializeCustomLabels {
    seriliziationVersion: number;
    getSystemState(): object;
    applySystemState(state: object, version: number, durationS: number): Promise<void> | void;
    private applyStateV1;
    applyDefaultState(): void;
    constructor(appObj: AppObject);
}
export interface SerializedCustomLabelsV1 {
    customLabels: SerializedCustomLabelV1[];
}
export interface SerializedCustomLabelV1 {
    objectId: string;
    customLabel: string;
}
//# sourceMappingURL=SerializeCustomLabels.d.ts.map