@yamada-ui/modal
Version:
Yamada UI modal component
31 lines (28 loc) • 1.02 kB
TypeScript
import * as react from 'react';
import { RefObject } from 'react';
import { CSSUIObject } from '@yamada-ui/core';
import { ModalOptions } from './modal.js';
import '@yamada-ui/motion';
import '@yamada-ui/focus-lock';
import '@yamada-ui/portal';
import './modal-content.js';
interface ModalContext extends ModalOptions {
bodyRef: RefObject<HTMLElement>;
headerRef: RefObject<HTMLElement>;
styles: {
[key: string]: CSSUIObject | undefined;
};
}
declare const ModalProvider: react.Provider<ModalContext>;
declare const useModal: () => ModalContext;
interface DialogContext {
[key: string]: CSSUIObject | undefined;
}
declare const DialogProvider: react.Provider<DialogContext>;
declare const useDialog: () => DialogContext;
interface DrawerContext {
[key: string]: CSSUIObject | undefined;
}
declare const DrawerProvider: react.Provider<DrawerContext>;
declare const useDrawer: () => DrawerContext;
export { DialogProvider, DrawerProvider, ModalProvider, useDialog, useDrawer, useModal };