@ordojs/cli
Version:
Command-line interface for OrdoJS framework
90 lines • 2.75 kB
TypeScript
/**
* @fileoverview OrdoJS CLI - Deployment adapter manager
* Manages deployment adapters and provides a plugin architecture
*/
import { DeploymentAdapter, DeploymentConfig, DeploymentResult } from './adapter-interface.js';
/**
* Deployment adapter manager configuration
*/
export interface AdapterManagerConfig {
/**
* Directory to store adapter configurations
*/
configDir?: string;
/**
* Default adapter to use
*/
defaultAdapter?: string;
}
/**
* Deployment adapter manager
* Manages deployment adapters and provides a plugin architecture
*/
export declare class DeploymentAdapterManager {
/**
* Registered adapters
*/
private adapters;
/**
* Adapter manager configuration
*/
private config;
/**
* Create a new deployment adapter manager
* @param config Adapter manager configuration
*/
constructor(config?: AdapterManagerConfig);
/**
* Register a deployment adapter
* @param adapter Deployment adapter
*/
registerAdapter(adapter: DeploymentAdapter): void;
/**
* Get a deployment adapter by name
* @param name Adapter name
* @returns Deployment adapter
*/
getAdapter(name: string): DeploymentAdapter | undefined;
/**
* Get all registered adapters
* @returns Array of deployment adapters
*/
getAllAdapters(): DeploymentAdapter[];
/**
* Get the default adapter
* @returns Default deployment adapter
*/
getDefaultAdapter(): DeploymentAdapter | undefined;
/**
* Set the default adapter
* @param name Adapter name
*/
setDefaultAdapter(name: string): void;
/**
* Load deployment configuration from file
* @param target Deployment target name
* @returns Deployment configuration
*/
loadDeploymentConfig(target: string): Promise<DeploymentConfig>;
/**
* Save deployment configuration to file
* @param target Deployment target name
* @param config Deployment configuration
*/
saveDeploymentConfig(target: string, config: DeploymentConfig): Promise<void>;
/**
* Prepare deployment using the specified adapter
* @param adapterName Adapter name
* @param config Deployment configuration
* @returns Deployment result
*/
prepareDeployment(adapterName: string, config: DeploymentConfig): Promise<DeploymentResult>;
/**
* Optimize for deployment using the specified adapter
* @param adapterName Adapter name
* @param config Deployment configuration
* @returns Optimization results
*/
optimizeForDeployment(adapterName: string, config: DeploymentConfig): Promise<any>;
}
//# sourceMappingURL=adapter-manager.d.ts.map