@stacksjs/launchpad
Version:
Like Homebrew, but faster.
46 lines • 1.29 kB
TypeScript
import path from 'node:path';
import type { PHPConfig } from '../types';
export declare interface PHPShimResult {
success: boolean
shimPath: string
executablePath: string
environmentVariables: Record<string, string>
libraryPaths: string[]
issues: string[]
recommendations: string[]
}
export declare class PHPShimManager {
private phpConfig: PHPConfig;
private shimDir: string;
constructor(phpConfig?: PHPConfig);
createPHPShim(phpExecutablePath: string): Promise<PHPShimResult>;
private detectOptimalLibraryConfiguration(): Promise<{
libraryPaths: string[]
environmentVariables: Record<string, string>
issues: string[]
recommendations: string[]
}>;
private discoverEnvironmentLibraries(envDir: string): string[];
private generateShimScript(phpExecutablePath: string, libraryConfig: {
environmentVariables: Record<string, string>
libraryPaths: string[]
}): string;
testPHPShim(shimPath: string): Promise<{
success: boolean
version: string
extensions: string[]
databaseSupport: {
sqlite: boolean
mysql: boolean
postgresql: boolean
}
issues: string[]
}>;
removePHPShim(): boolean;
getShimStatus(): {
exists: boolean
path: string
executable: boolean
target?: string
};
}