UNPKG

buildkit-primevue

Version:

FormKit components and helpers built on PrimeVue v4 with Tailwind CSS

61 lines (50 loc) 1.9 kB
// Type definitions for buildkit-primevue // Project: buildkit-primevue // Definitions by: BuildKit Team import type { App, Plugin, DefineComponent, Component } from 'vue'; import type { FormFieldState } from '@primevue/forms'; export interface FormKitField { groupId?: string; label?: string; required?: boolean; messages?: string[]; className?: string; type?: string; as?: string; defaultValue?: any; colSpan: { mobile: number; tablet: number; desktop: number }; style: any; schema?: string; vertical: boolean; options?: Array<{ label: string; value: any }>; showWhen?: { field: string; equals?: any; includes?: any | any[] }; hideWhen?: { field: string; equals?: any; includes?: any | any[] }; [key: string]: any; } export interface FormKitProps { fields: { [key: string]: FormKitField }; size?: 'small' | 'medium' | 'large'; } // Components export const FormKit: DefineComponent<FormKitProps>; export const FormKitControl: DefineComponent<any>; export const FormKitField: DefineComponent<any>; export const FormKitLabel: DefineComponent<any>; // Default export is the main FormKit component declare const _default: typeof FormKit; export default _default; // Plugin for global registration export const BuildKitPrimeVue: Plugin & { version: string } & { install(app: App): void; }; export const version: string; // Utils export function setDynamicFields(columns: any[]): any; export function setFields(data: any, fields: any): void; export function getPayload(states: Record<string, FormFieldState>, fields?: Record<string, any>): any; export function clear(states: Record<string, FormFieldState>, fields: any): any; // Visibility utils (re-exported) export function equals<T = any>(a: T, b: T): boolean; export function includesMatch(haystack: any, needle: any): boolean; // Re-export types export type { FormKitProps as TypesFormKitProps };