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.

51 lines (50 loc) 2.19 kB
import { type AppwriteConfig } from "appwrite-utils"; import { type ValidationResult } from "../config/configValidation.js"; /** * Session authentication preservation options for config loading */ export interface SessionPreservationOptions { sessionCookie?: string; authMethod?: "session" | "apikey" | "auto"; sessionMetadata?: { email?: string; expiresAt?: string; }; } /** * Configuration loading options */ export interface ConfigLoadingOptions { validate?: boolean; strictMode?: boolean; reportValidation?: boolean; preserveAuth?: SessionPreservationOptions; } /** * Helper function to create session preservation options from session data * @param sessionCookie The session cookie string * @param email Optional email associated with the session * @param expiresAt Optional expiration timestamp * @returns SessionPreservationOptions object */ export declare function createSessionPreservation(sessionCookie: string, email?: string, expiresAt?: string): SessionPreservationOptions; export { findAppwriteConfig, findFunctionsDir } from "./configDiscovery.js"; /** * Loads the Appwrite configuration and returns both config and the path where it was found. * @param configDir The directory to search for config files. * @param options Loading options including validation settings and session preservation. * @returns Object containing the config, path, and validation results. */ export declare const loadConfigWithPath: (configDir: string, options?: ConfigLoadingOptions) => Promise<{ config: AppwriteConfig; actualConfigPath: string; validation?: ValidationResult; }>; /** * Loads the Appwrite configuration and all collection configurations from a specified directory. * Supports both YAML and TypeScript config formats with backward compatibility. * @param configDir The directory containing the config file and collections folder. * @param options Loading options including validation settings and session preservation. * @returns The loaded Appwrite configuration including collections. */ export declare const loadConfig: (configDir: string, options?: ConfigLoadingOptions) => Promise<AppwriteConfig>;