@stacksjs/launchpad
Version:
Like Homebrew, but faster.
60 lines • 1.72 kB
TypeScript
/**
* Parse .env file and extract database configuration
*/
export declare function parseEnvFile(envPath: string): Record<string, string>;
/**
* Get database configuration from Laravel .env file
*/
export declare function getLaravelDatabaseConfig(projectDir?: string): {
driver: string
host: string
port: number
database: string
username: string
password: string
};
/**
* Get supported frameworks based on configuration
*/
export declare function getSupportedFrameworks(): ProjectFramework[];
/**
* Detect what PHP framework is being used in the current project
*/
export declare function detectProjectFramework(): ProjectFramework | null;
/**
* Set up development environment for any PHP project
* This function detects project type and configures the best database option
*/
export declare function setupPHPDevelopmentEnvironment(options?: {
preferredDatabase?: 'postgres' | 'sqlite'
framework?: string
}): Promise<boolean>;
/**
* Run database migrations and seeding for any supported framework
*/
export declare function runDatabaseSetup(framework?: ProjectFramework): Promise<boolean>;
/**
* Laravel-specific setup function for backward compatibility
*/
export declare function setupLaravelEnvironment(options?: {
preferredDatabase?: 'postgres' | 'sqlite'
runMigrations?: boolean
}): Promise<boolean>;
export declare interface ProjectFramework {
name: string
detectionFile: string
databaseConfig?: {
envFile?: string
migrationCommand?: string[]
seedCommand?: string[]
configClearCommand?: string[]
actualConfig?: {
driver: string
host: string
port: number
database: string
username: string
password: string
}
}
}