import type { WorkspaceStore } from '@scalar/workspace-store/client';
import type { WorkspaceEventBus } from '@scalar/workspace-store/events';
import type { TraversedTag } from '@scalar/workspace-store/schemas/navigation';
/**
 * Command Palette Tag Component
 *
 * Provides a form for creating or editing a tag in a document (collection).
 * Tags are used to organize and group related API operations.
 *
 * When `tag` is provided, the component enters edit mode where:
 * - The name input is pre-filled with the current tag name
 * - The collection selector is hidden (tag already belongs to a document)
 * - A cancel button is shown to close the modal without saving
 * - Back navigation is disabled (cannot go back with backspace)
 * - Submitting emits an 'edit' event instead of creating a new tag
 *
 * In create mode, validates that the tag name does not already exist
 * in the selected document to prevent duplicates.
 *
 * @example
 * // Create mode
 * <CommandPaletteTag
 *   :workspaceStore="workspaceStore"
 *   :eventBus="eventBus"
 *   @close="handleClose"
 *   @back="handleBack"
 * />
 *
 * // Edit mode
 * <CommandPaletteTag
 *   :workspaceStore="workspaceStore"
 *   :eventBus="eventBus"
 *   :tag="tag"
 *   @close="handleClose"
 *   @edit="handleEdit"
 * />
 */
declare const _default: typeof __VLS_export;
export default _default;
declare const __VLS_export: import("vue").DefineComponent<{
    /** The workspace store for accessing documents and tags */
    workspaceStore: WorkspaceStore;
    /** Event bus for emitting tag creation events */
    eventBus: WorkspaceEventBus;
    /** Preselected document id to create the tag in */
    documentName?: string;
    /** When provided, the component enters edit mode with this name pre-filled */
    tag?: TraversedTag;
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
    close: () => any;
    back: (keyboardEvent: KeyboardEvent) => any;
}, string, import("vue").PublicProps, Readonly<{
    /** The workspace store for accessing documents and tags */
    workspaceStore: WorkspaceStore;
    /** Event bus for emitting tag creation events */
    eventBus: WorkspaceEventBus;
    /** Preselected document id to create the tag in */
    documentName?: string;
    /** When provided, the component enters edit mode with this name pre-filled */
    tag?: TraversedTag;
}> & Readonly<{
    onClose?: (() => any) | undefined;
    onBack?: ((keyboardEvent: KeyboardEvent) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
//# sourceMappingURL=CommandPaletteTag.vue.d.ts.map