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
TypeScript
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[];
};
}