UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

29 lines (28 loc) 1.6 kB
import React from "react"; import { IComponentProps } from '@docsvision/web/core/component'; import { ModalDialogProps } from '@docsvision/web/components/modals/modal-dialog'; import { DirectoryEntryModalLogic } from "@docsvision/webclient/BackOffice/DirectoryEntryModalLogic"; import { Event } from "effector"; import { $LocationContainerControlServices, LocationContainerControl } from "@docsvision/webclient/System/LocationContainerControl"; import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models"; /** @internal */ export interface IDirectoryEntryModalProps<TParams, TResult> extends Omit<ModalDialogProps, "onSetupView" | "onSetupLogic" | "isOpen">, IComponentProps<DirectoryEntryModalLogic<any, any>, DirectoryEntryModalView> { locationName: string; loadLayout: (params: TParams) => Promise<GenModels.LayoutViewModel>; getHeader: (params: TParams) => string | React.ReactNode; showEvent: Event<TParams>; /** Create layout creates row on load. So it should be canceled normally, with deletion of the row. */ preventCloseBeforeLoaded?: boolean; onAccept?: (result?: TResult, params?: TParams) => void; onCancel?: (reason: any) => void; onClosed?: () => void; services: $LocationContainerControlServices; name?: string; } /** @internal */ export declare class DirectoryEntryModalView { dialog: (props: ModalDialogProps) => JSX.Element; locationContainer: typeof LocationContainerControl; } /** @internal */ export declare const DirectoryEntryModal: (props: IDirectoryEntryModalProps<any, any>) => JSX.Element;