@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
52 lines (51 loc) • 1.33 kB
TypeScript
import { Slots } from "../UxCoreTypings";
export interface DialogModel {
visible?: boolean;
}
export declare enum DialogPositions {
Left = 0,
Center = 1,
Right = 2,
FullScreen = 3,
NextToContentNav = 4
}
export interface IDialogProperties {
headerClass?: string;
contentClass?: string;
disabled?: boolean;
hideOverlay?: boolean;
maxWidth?: string | number;
persistent?: boolean;
scrollable?: boolean;
width?: string | number;
position?: DialogPositions;
title?: string;
light?: boolean;
dark?: boolean;
hideCloseButton?: boolean;
noClickAnimation?: boolean;
/**
* Force the dialog to render on mounted (e.g rendered but not shown)
*/
eager?: boolean;
/**
* Add aria-labelledby for dialog
*/
ariaLabelTitle?: string;
/**
* Add aria-hidden for dialog content
*/
ariaHiddenContent?: boolean;
}
export interface IDialogSlots {
default: () => void;
activator?: () => void;
}
export interface IDialog extends IDialogProperties {
[name: string]: any;
valueBind?: DialogModel;
onClose?: () => void;
onKeydown?: (e: KeyboardEvent) => void;
onClickOutside?: (closeDialog: (prompt: boolean, title?: string) => void, event?: Event) => void;
slots?: Slots<IDialogSlots>;
}