UNPKG

@vulform/core

Version:

Core utilities and types for VulForm packages

57 lines 1.57 kB
/** * VulForm API Client * Handles all API communication with VulForm backend */ import { ApiClientConfig, FormTemplate, SubmissionRequest, SubmissionResponse, AnalyticsEvent, ExportRequest, ExportResult, FieldValidation } from '../types'; export declare class VulFormApiClient { private config; constructor(config: ApiClientConfig); private resolveBaseUrl; /** * Get form template by ID */ getTemplate(templateId: string): Promise<FormTemplate>; /** * Submit form data */ submitForm(data: SubmissionRequest): Promise<SubmissionResponse>; /** * Validate individual field */ validateField(field: string, value: any, validation: FieldValidation): Promise<string | null>; /** * Track analytics event */ trackEvent(event: AnalyticsEvent): Promise<void>; /** * Export form template as code */ exportTemplate(request: ExportRequest): Promise<ExportResult>; /** * Client-side field validation */ private validateFieldClientSide; /** * Basic email validation */ private isValidEmail; /** * Make HTTP request with retry logic */ private makeRequest; /** * Sleep utility for retries */ private sleep; } /** * VulForm Error class */ export declare class VulFormError extends Error { code: string; statusCode?: number; details?: any; constructor(code: string, message: string, statusCode?: number, details?: any); } export default VulFormApiClient; //# sourceMappingURL=api-client.d.ts.map