import { KeyWord } from "../../Common/InputState";
import { LogType } from "../../Common/Log";
import { Entity } from "../../DatabaseServices/Entity/Entity";
export interface MsgInfo {
    msg: string;
    entity?: Entity[];
}
export interface CommandMsg {
    genre: "normal" | "click";
    key?: number;
    msg?: string;
    type?: LogType;
    entity?: Entity[];
    info?: MsgInfo[];
}
export declare class CommandStore {
    private constructor();
    private static _SingleInstance;
    static GetInstance(): CommandStore;
    isTransparentTerminalShow: boolean;
    private _promptKeyIndex;
    promptList: Array<CommandMsg>;
    commandPrompt: string;
    keyWordList: KeyWord[];
    historyCmdList: string[];
    disableInput: boolean;
    commandList: LogType[];
    showCmdTypeList: Set<LogType>;
    showCmdModal: boolean;
    /**
     * 显示消息
     * @param msg
     */
    Prompt(msg: string, type?: LogType, entity?: Entity[]): void;
    /**
     * 显示消息
     * @param msg
     */
    InteractionPrompt(info: MsgInfo[], type?: LogType): void;
    lastExecTime: number;
    HandleInput: (cmd: string) => void;
    OnHandleCommandTypeChange(cmd: LogType): void;
    OnHandleShowCmdModalChange(show: boolean): void;
}
//# sourceMappingURL=CommandStore.d.ts.map