import { AutoCompleteCompleteEvent } from 'primevue/autocomplete'; import { LocoKitFormField, LocoKitMessage } from '@locokit/definitions'; import { LocoKitFormFieldAutocomplete, LocoKitTableFieldValue, LocoKitTableRecordEnhanced } from '@locokit/definitions/dist/fieldType'; export type GenericFormInitialValues = Record; declare const _default: __VLS_WithTemplateSlots; loading?: boolean; /** * Form button configuration, * 4 buttons are available */ buttons?: { submit?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; reset?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; cancel?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; delete?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; }; /** How to display submit buttons, default to sticky */ buttonPosition?: "sticky" | "block"; /** A message to display into the form, just above the buttons. */ message?: LocoKitMessage | null; /** * Suggestions used for autocomplete fields. * Only one prop is used, * and passed to all autocomplete fields, * as only one can be edited at a time. */ autocompleteSuggestions?: unknown[]; /** * Related records for filtering purpose */ relatedRecords?: Record; /** * Build a default object with all fields id to null * before hydration with form values * (default true) */ buildResultWithNull?: boolean; }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { delete: () => any; submit: (values: Record) => any; cancel: () => any; complete: (event: AutoCompleteCompleteEvent, field: LocoKitFormFieldAutocomplete, values: Record) => any; }, string, import('vue').PublicProps, Readonly<{ fields: LocoKitFormField[]; initialValues?: Record; loading?: boolean; /** * Form button configuration, * 4 buttons are available */ buttons?: { submit?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; reset?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; cancel?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; delete?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; }; /** How to display submit buttons, default to sticky */ buttonPosition?: "sticky" | "block"; /** A message to display into the form, just above the buttons. */ message?: LocoKitMessage | null; /** * Suggestions used for autocomplete fields. * Only one prop is used, * and passed to all autocomplete fields, * as only one can be edited at a time. */ autocompleteSuggestions?: unknown[]; /** * Related records for filtering purpose */ relatedRecords?: Record; /** * Build a default object with all fields id to null * before hydration with form values * (default true) */ buildResultWithNull?: boolean; }> & Readonly<{ onDelete?: (() => any) | undefined; onSubmit?: ((values: Record) => any) | undefined; onCancel?: (() => any) | undefined; onComplete?: ((event: AutoCompleteCompleteEvent, field: LocoKitFormFieldAutocomplete, values: Record) => any) | undefined; }>, { loading: boolean; fields: LocoKitFormField[]; initialValues: Record; buttons: { submit?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; reset?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; cancel?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; delete?: { enabled: boolean; label?: string; icon?: string; loadingIcon?: string; }; }; buttonPosition: "sticky" | "block"; autocompleteSuggestions: unknown[]; relatedRecords: Record; buildResultWithNull: boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, { top?(_: {}): any; default?(_: {}): any; bottom?(_: {}): any; buttons?(_: {}): any; }>; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };