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.

49 lines (48 loc) 1.65 kB
import { Client, type Models } from "node-appwrite"; import { type AppwriteFunction } from "appwrite-utils"; export interface FunctionSearchOptions { searchPaths?: string[]; caseSensitive?: boolean; allowFuzzyMatch?: boolean; verbose?: boolean; } export interface FunctionDeploymentOptions { activate?: boolean; entrypoint?: string; commands?: string; ignored?: string[]; verbose?: boolean; forceRedeploy?: boolean; } export declare class FunctionManager { private client; private functions; constructor(client: Client); /** * Improved function directory detection with multiple strategies */ findFunctionDirectory(functionName: string, options?: FunctionSearchOptions): Promise<string | null>; private generateNameVariations; private getStandardFunctionPaths; private recursiveDirectorySearch; private shouldSkipDirectory; private isValidFunctionDirectory; /** * Enhanced function deployment with better error handling and validation */ deployFunction(functionConfig: AppwriteFunction, functionPath: string, options?: FunctionDeploymentOptions): Promise<Models.Deployment>; private createFunction; private updateFunction; private executePredeployCommands; private createDeployment; getFunction(functionId: string): Promise<Models.Function>; listFunctions(): Promise<Models.FunctionList>; deleteFunction(functionId: string): Promise<void>; /** * Validate function configuration */ validateFunctionConfig(functionConfig: AppwriteFunction): { valid: boolean; errors: string[]; }; }