import { SvelteComponentTyped } from "svelte"; import { Focus } from "../../utils/calculate-active-index"; import type { Readable, Writable } from "svelte/store"; import type { SupportedAs } from "../../internal/elements"; export declare enum MenuStates { Open = 0, Closed = 1 } export declare type MenuItemData = { textValue: string; disabled: boolean; }; export declare type StateDefinition = { menuState: MenuStates; buttonStore: Writable; itemsStore: Writable; items: { id: string; data: MenuItemData; }[]; searchQuery: string; activeItemIndex: number | null; closeMenu(): void; openMenu(): void; goToItem(focus: Focus, id?: string): void; search(value: string): void; clearSearch(): void; registerItem(id: string, dataRef: MenuItemData): void; unregisterItem(id: string): void; }; export declare function useMenuContext(componentName: string): Readable; declare class __sveltets_Render { props(): Omit, import("../../types").TInternalProps | "as" | "static" | "unmount"> & { as?: TAsProp | undefined; }; events(): {} & { [evt: string]: CustomEvent; }; slots(): { default: { open: boolean; }; }; } export declare type MenuProps = ReturnType<__sveltets_Render['props']>; export declare type MenuEvents = ReturnType<__sveltets_Render['events']>; export declare type MenuSlots = ReturnType<__sveltets_Render['slots']>; export default class Menu extends SvelteComponentTyped, MenuEvents, MenuSlots> { } export {};