@sandlada/vue-mdc
Version:

85 lines • 3.4 kB
TypeScript
/**
* @license
* Copyright 2025 Sandlada & Kai Orion
* SPDX-License-Identifier: MIT
*/
import { type SlotsType } from 'vue';
import { type INavigationAnimation } from './animations';
import { NavigationDrawerController } from './navigation-drawer-controller';
import { type TNavigationDrawerSlots } from './navigation-drawer.definition';
import { ENavigationDrawerState } from './navigation-state';
export declare const NavigationDrawer: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
readonly modal: {
readonly default: true;
readonly type: import("vue").PropType<boolean>;
};
readonly defaultOpen: {
readonly default: false;
readonly type: import("vue").PropType<boolean>;
};
readonly modelValue: {
readonly default: null;
readonly type: import("vue").PropType<boolean>;
};
}>, {}, {
animationController: null | AbortController;
open: boolean;
opening: boolean;
nextClickIsFromContent: boolean;
escapePressedWithoutCancel: boolean;
isAtScrollTop: boolean;
isAtScrollBottom: boolean;
intersectionObserver: null | IntersectionObserver;
controller: null | NavigationDrawerController;
}, {
isOpen: {
get(): boolean;
set(value: boolean): void;
};
}, {
getDialogElement(): HTMLDialogElement;
getScrimElement(): HTMLSpanElement;
getContainerElement(): HTMLElement;
getScrollerElement(): HTMLElement;
getTopAnchorElement(): HTMLElement;
getBottomAnchorElement(): HTMLElement;
setRootAttribute(state: ENavigationDrawerState): void;
handleRequestRoute(e: CustomEvent<{
element: HTMLElement;
}>): void;
handleClose(e: Event): void;
handleCancel(e: Event): void;
handleContentClick(): void;
handleDialogClick(): void;
handleKeydown(event: KeyboardEvent): void;
handleAnchorIntersection(entry: IntersectionObserverEntry): void;
show(): Promise<void>;
close(): Promise<void>;
animateDialog(animation: INavigationAnimation): Promise<void>;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("submit" | "cancel" | "close" | "update:modelValue" | "open" | "opend" | "closed")[], "submit" | "cancel" | "close" | "update:modelValue" | "open" | "opend" | "closed", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
readonly modal: {
readonly default: true;
readonly type: import("vue").PropType<boolean>;
};
readonly defaultOpen: {
readonly default: false;
readonly type: import("vue").PropType<boolean>;
};
readonly modelValue: {
readonly default: null;
readonly type: import("vue").PropType<boolean>;
};
}>> & Readonly<{
onSubmit?: ((...args: any[]) => any) | undefined;
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
onCancel?: ((...args: any[]) => any) | undefined;
onClose?: ((...args: any[]) => any) | undefined;
onOpen?: ((...args: any[]) => any) | undefined;
onOpend?: ((...args: any[]) => any) | undefined;
onClosed?: ((...args: any[]) => any) | undefined;
}>, {
readonly modelValue: boolean;
readonly defaultOpen: boolean;
readonly modal: boolean;
}, SlotsType<TNavigationDrawerSlots>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
//# sourceMappingURL=navigation-drawer.d.ts.map