UNPKG

carbon-components-svelte

Version:
72 lines (58 loc) 1.52 kB
import { SvelteComponentTyped } from "svelte"; import type { SvelteHTMLElements } from "svelte/elements"; type $RestProps = SvelteHTMLElements["div"]; type $Props<Icon = any> = { /** * Specify the primary button text * @default "" */ primaryButtonText?: string; /** * Specify the primary button icon. * @default undefined */ primaryButtonIcon?: Icon; /** * Set to `true` to disable the primary button * @default false */ primaryButtonDisabled?: boolean; /** * Specify a class for the primary button. * @default undefined */ primaryClass?: string; /** * Specify the secondary button text * @default "" */ secondaryButtonText?: string; /** * 2-tuple prop to render two secondary buttons for a 3 button modal. * Supersedes `secondaryButtonText`. * @default [] */ secondaryButtons?: [] | [{ text: string }, { text: string }]; /** * Specify a class for the secondary button. * @default undefined */ secondaryClass?: string; /** * Set to `true` to use the danger variant * @default false */ danger?: boolean; children?: (this: void) => void; [key: `data-${string}`]: unknown; }; export type ModalFooterProps<Icon = any> = Omit<$RestProps, keyof $Props<Icon>> & $Props<Icon>; export default class ModalFooter<Icon = any> extends SvelteComponentTyped< ModalFooterProps<Icon>, { "click:button--secondary": CustomEvent<{ text: string; }>; }, { default: Record<string, never> } > {}