import type { DialogController } from './dialog-controller'; import type { DialogContainerSettings, DialogSettings } from './types.svelte'; import type { Component } from 'svelte'; export type AnyDialogData = DialogData; export type DialogData = { id: number | string; containerId: string; view: DialogViewComponentType; data?: TData; controller: DialogController; }; type DialogViewWithData = Component<{ data: TData; controller: DialogController; }>; type DialogViewWithoutData = Component<{ controller: DialogController; }>; export type DialogViewComponentType = TData extends void ? DialogViewWithoutData : DialogViewWithData; export type DialogInit = { view: DialogViewComponentType; data?: TData; explicitSettings?: Partial; containerSettings?: Partial; /** Routes the dialog to a ``. If no host is mounted for this id, a fresh one is lazily created on `document.body`. Default container is `''`. */ containerId?: string; }; export {};