UNPKG

appwrite-utils-cli

Version:

Appwrite Utility Functions to help with database management, data conversion, data import, migrations, and much more. Meant to be used as a CLI tool, I do not recommend installing this in frontend environments.

67 lines (66 loc) 2.21 kB
import { type AppwriteConfig } from "appwrite-utils"; /** * Validation error types for different categories of issues */ export type ValidationErrorType = "naming_conflict" | "invalid_database_reference" | "missing_required_field" | "schema_inconsistency" | "duplicate_definition" | "cross_array_conflict"; /** * Detailed validation error information */ export interface ValidationError { type: ValidationErrorType; message: string; details?: string; suggestion?: string; affectedItems?: string[]; severity: "error" | "warning" | "info"; } /** * Configuration validation result */ export interface ValidationResult { isValid: boolean; errors: ValidationError[]; warnings: ValidationError[]; suggestions: ValidationError[]; } /** * Conflict information between collections and tables */ export interface ConfigConflict { name: string; collectionsIndex?: number; tablesIndex?: number; type: "name" | "id" | "database_reference"; message: string; } /** * Main configuration validation function * Validates the dual collections/tables configuration schema */ export declare function validateCollectionsTablesConfig(config: AppwriteConfig): ValidationResult; /** * Detects naming conflicts between collections and tables */ export declare function detectNamingConflicts(config: AppwriteConfig): ValidationError[]; /** * Find naming conflicts between collections and tables */ export declare function findNamingConflicts(config: AppwriteConfig): ConfigConflict[]; /** * Validates database ID references in collections and tables */ export declare function validateDatabaseReferences(config: AppwriteConfig): ValidationError[]; /** * Validates schema consistency between collections and tables */ export declare function validateSchemaConsistency(config: AppwriteConfig): ValidationError[]; /** * Reports validation results with formatted output */ export declare function reportValidationResults(result: ValidationResult, options?: { verbose?: boolean; }): void; /** * Validation with strict mode for enhanced checking */ export declare function validateWithStrictMode(config: AppwriteConfig, strictMode?: boolean): ValidationResult;