import { ComponentSchema } from '../../core/types/epic-designer';
import { Ref } from 'vue';
/**
历史记录模型
*/
export interface RecordModel {
    type: string;
    componentSchema: string;
}
/**
 撤销重做功能
 */
export declare function useRevoke(): {
    recordList: Ref<{
        type: string;
        componentSchema: string;
    }[], RecordModel[] | {
        type: string;
        componentSchema: string;
    }[]>;
    undoList: Ref<{
        type: string;
        componentSchema: string;
    }[], RecordModel[] | {
        type: string;
        componentSchema: string;
    }[]>;
    currentRecord: Ref<{
        type: string;
        componentSchema: string;
    } | null, RecordModel | {
        type: string;
        componentSchema: string;
    } | null>;
    push: (componentSchema: ComponentSchema[], type?: string) => void;
    undo: () => RecordModel | false;
    redo: () => RecordModel | false;
    reset: () => void;
};
export type Revoke = ReturnType<typeof useRevoke>;
