UNPKG

hayai-db

Version:

⚡ Instantly create and manage local databases with one command

52 lines (51 loc) 2.16 kB
import { DatabaseInstance, DatabaseTemplate } from './types.js'; export declare class DockerManager { private static instance; private instances; private composeFile; private dockerVerified; private constructor(); static getInstance(): DockerManager; private checkDockerInstallation; private showDockerInstallationInstructions; private verifyDockerSetup; private pathExists; initialize(): Promise<void>; createDatabase(name: string, template: DatabaseTemplate, options?: { port?: number; adminDashboard?: boolean; customEnv?: Record<string, string>; }): Promise<DatabaseInstance>; removeDatabase(name: string): Promise<void>; startDatabase(name: string): Promise<void>; stopDatabase(name: string): Promise<void>; private executeDockerCompose; startAllDatabases(): Promise<void>; stopAllDatabases(): Promise<void>; getInstance(name: string): DatabaseInstance | undefined; getAllInstances(): DatabaseInstance[]; getRunningInstances(): DatabaseInstance[]; getStoppedInstances(): DatabaseInstance[]; private updateComposeFile; private loadExistingInstances; private saveInstances; private loadComposeFile; private generateConnectionUri; private getImageForEngine; private getDefaultPortForEngine; private getDefaultVolumeForEngine; private getHealthcheckForEngine; getComposeFileContent(): Promise<string>; updateEnvironmentFile(envFilePath?: string): Promise<void>; } export declare const getDockerManager: () => DockerManager; export declare const createDatabase: (name: string, template: DatabaseTemplate, options?: { port?: number; adminDashboard?: boolean; customEnv?: Record<string, string>; }) => Promise<DatabaseInstance>; export declare const removeDatabase: (name: string) => Promise<void>; export declare const startDatabase: (name: string) => Promise<void>; export declare const stopDatabase: (name: string) => Promise<void>; export declare const getAllDatabases: () => Promise<DatabaseInstance[]>; export declare function executeDockerCommand(args: string[]): Promise<string>;