export interface TreeFilterState {
    searchKey?: string;
    catalogId: string | null;
    schedulerId: string | null;
}
export declare enum TreeEventType {
    SELECT_CATEGORY = "SELECT_CATEGORY",
    CREATE_CATEGORY = "CREATE_CATEGORY",
    UPDATE_CATEGORY = "UPDATE_CATEGORY",
    DELETE_CATEGORY = "DELETE_CATEGORY",
    SELECT_ITEM = "SELECT_ITEM",
    CREATE_ITEM = "CREATE_ITEM",
    UPDATE_ITEM = "UPDATE_ITEM",
    DELETE_ITEM = "DELETE_ITEM",
    SELECT_PRICE = "SELECT_PRICE",
    SELECT_VARIANT = "SELECT_VARIANT",
    SELECT_GROUP = "SELECT_GROUP",
    EDIT_GROUP = "EDIT_GROUP"
}
type SelectCategoryEvent = {
    type: TreeEventType.SELECT_CATEGORY;
    categoryId: string | null;
};
type CreateCategoryEvent = {
    type: TreeEventType.CREATE_CATEGORY;
};
type UpdateCategoryEvent = {
    type: TreeEventType.UPDATE_CATEGORY;
    categoryId: string | null;
};
type DeleteCategoryEvent = {
    type: TreeEventType.DELETE_CATEGORY;
    categoryId: string | null;
};
type SelectItemEvent = {
    type: TreeEventType.SELECT_ITEM;
    itemId: string;
};
type CreateItemEvent = {
    type: TreeEventType.CREATE_ITEM;
    categoryId: string | null;
};
type DeleteItemEvent = {
    type: TreeEventType.DELETE_ITEM;
    itemId: string | null;
};
type SelectPriceEvent = {
    type: TreeEventType.SELECT_PRICE;
    itemId: string;
};
type SelectVariantEvent = {
    type: TreeEventType.SELECT_VARIANT;
    itemId: string;
    combinationKey: string;
};
type SelectGroupEvent = {
    type: TreeEventType.SELECT_GROUP;
    itemId: string;
    groupId: string;
};
type EditGroupEvent = {
    type: TreeEventType.EDIT_GROUP;
    itemId: string;
    groupId: string;
};
export type TreeEvent = SelectCategoryEvent | CreateCategoryEvent | UpdateCategoryEvent | DeleteCategoryEvent | SelectItemEvent | CreateItemEvent | DeleteItemEvent | SelectPriceEvent | SelectVariantEvent | SelectGroupEvent | EditGroupEvent;
export interface TreeSubQuery {
    query: string[];
}
export interface TreeQuery {
    levels: TreeSubQuery[];
}
export {};
