@snap/camera-kit
Version:
Camera Kit Web
60 lines • 1.55 kB
TypeScript
/**
* Dialog options.
*/
interface DialogOptions<Keys extends string> {
/**
* Element to attach the dialgo to.
*/
container: HTMLElement;
/**
* Body content string. Can be HTML string.
*/
body?: string;
/**
* Title string to render. Can be HTML string.
*/
title?: string;
/**
* Accessible dialog title text,
* especially useful for voice-over features when the title field is an image.
*/
titleText?: string;
/**
* "data-testid" attribute for testing purposes.
*/
dataTestId?: string;
/**
* Use the lang field to set "lang" attribute on the dialog if that should be different from the parent page.
*/
lang?: string;
/**
* Accessbile text of dismiss (X) button,
* especially useful for voice-over features when the title field is an image.
*/
dismissButtonText?: string;
/**
* Buttons to display at the bottom of the dialog.
*/
buttons?: DialogButton<Keys>[];
}
/**
* Dialog button.
*/
interface DialogButton<Key extends string> {
/**
* Button text.
*/
text: string;
/**
* Value returned by the {@link showDialog} function after the button is clicked.
*/
key: Key;
/**
* Whether to apply "secondary" styles on the button.
*/
isSecondary?: boolean;
}
type DismissKey = "dismiss";
export declare function showDialog<Keys extends string>(options: DialogOptions<Keys>): Promise<Keys | DismissKey>;
export {};
//# sourceMappingURL=dialog.d.ts.map