import type { OpenAPIV3_1 } from '@scalar/openapi-types';
import { type Ref } from 'vue';
import type { TraverseSpecOptions } from '../../../features/traverse-schema';
/** Track which sidebar items are opened */
type CollapsedSidebarItems = Record<string, boolean>;
/** Sidebar initialization options */
export type SidebarOptions = TraverseSpecOptions;
/**
 * Creating sidebar with only one traversal of the spec
 *
 * TODO:
 *  - add the search index creation as well
 *  - update docs
 *  - tagged models
 */
export declare const createSidebar: (dereferencedDocument: Ref<OpenAPIV3_1.Document>, options: SidebarOptions) => {
    collapsedSidebarItems: CollapsedSidebarItems;
    isSidebarOpen: Ref<boolean, boolean>;
    items: import("vue").ComputedRef<{
        entries: import("../../../features/traverse-schema").TraversedEntry[];
        titles: Map<string, string>;
    }>;
    scrollToOperation: (operationId: string, focus?: boolean) => void;
    setCollapsedSidebarItem: (key: string, value: boolean) => boolean;
    toggleCollapsedSidebarItem: (key: string) => boolean;
};
export {};
//# sourceMappingURL=create-sidebar.d.ts.map