import { FieldProps, WidgetProps } from "../types"; export interface SubmitHook { hook: () => void; promise: Promise; lajiFormId: string; relativePointer: string; running: boolean; description?: string; failed?: boolean; e?: string; } export default class SubmitHookService { private onSubmitHooksChange; private submitHooks; constructor(onSubmitHooksChange: (submitHooks: SubmitHook[]) => void); private send; private internalAdd; /** * Add a submit hook for a Field component. */ add(props: Pick, "formData" | "idSchema" | "formContext"> | Pick, "formData" | "id" | "formContext">, hook: SubmitHook["hook"]): () => Promise; /** Remove a hook either by id or hook instance */ remove(lajiFormId?: string, hook?: SubmitHook["hook"]): Promise; removeAll(): void; checkHooks(): Promise; }