@scalar/api-client
Version:
the open source API testing client
63 lines • 2.93 kB
TypeScript
import type { DraggingItem, HoveredItem } from '@scalar/draggable';
import { type SidebarState } from '@scalar/sidebar';
import type { WorkspaceEventBus } from '@scalar/workspace-store/events';
import type { WorkspaceDocument } from '@scalar/workspace-store/schemas';
import type { TraversedEntry } from '@scalar/workspace-store/schemas/navigation';
import type { Workspace } from '../../../v2/hooks/use-workspace-selector.js';
import type { ClientLayout } from '../../../v2/types/layout';
type __VLS_Props = {
/** All documents to display sidebar items for */
sidebarState: SidebarState<TraversedEntry>;
/** Layout for the client */
layout: ClientLayout;
/** The currently active workspace */
activeWorkspace: Workspace;
/** The list of all available workspaces */
workspaces: Workspace[];
/** The workspace event bus for handling workspace-level events */
eventBus: WorkspaceEventBus;
/** The documents belonging to the workspace */
documents: WorkspaceDocument[];
/**
* Prevents sidebar items from being hovered and dropped into. Can be either a function or a boolean
*
* @default true
*/
isDroppable?: boolean | ((draggingItem: DraggingItem, hoveredItem: HoveredItem) => boolean);
};
type __VLS_Slots = {
/** Slot to add the workspace button */
workspaceButton?(): unknown;
/** Slot to add additional content to the footer */
footer?(): unknown;
};
type __VLS_PublicProps = __VLS_Props & {
/** Controls the visibility of the sidebar */
'isSidebarOpen': boolean;
/** Controls the width of the sidebar */
'sidebarWidth': number;
};
declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"update:isSidebarOpen": (value: boolean) => any;
"update:sidebarWidth": (value: number) => any;
} & {
"create:workspace": () => any;
"select:workspace": (id?: string | undefined) => any;
selectItem: (id: string) => any;
reorder: (draggingItem: DraggingItem, hoveredItem: HoveredItem) => any;
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
"onCreate:workspace"?: (() => any) | undefined;
"onSelect:workspace"?: ((id?: string | undefined) => any) | undefined;
onSelectItem?: ((id: string) => any) | undefined;
onReorder?: ((draggingItem: DraggingItem, hoveredItem: HoveredItem) => any) | undefined;
"onUpdate:isSidebarOpen"?: ((value: boolean) => any) | undefined;
"onUpdate:sidebarWidth"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};
//# sourceMappingURL=Sidebar.vue.d.ts.map