export declare class InteractiveService { private verbose; private configService; private deploymentService; private domainService; constructor(verbose?: boolean); private resolveApiUrl; /** * Get environment name from API URL */ private getEnvironmentFromApiUrl; private log; private error; /** * Interactive alias mount flow - follows CRM pattern * 1. Fetch available instances for the store * 2. Let user select instance (grouped by plugin → version → config) * 3. Prompt for alias and mount details * 4. Mount the instance to alias */ handleInteractiveAliasPromotion(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Interactive install (instantiate) flow - follows CRM pattern * 1. Fetch available plugins/deployments * 2. Select plugin → version → template (optional) → config name * 3. Instantiate the plugin (create instance) */ handleInteractiveInstall(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; private parseDeploymentMetadata; /** * Scan for available .tgd.json and .json config files * PRIORITY 1: Use manifest.configuration.presets if defined * PRIORITY 2: Fallback to scanning config directory */ scanAvailableConfigs(): { name: string; path: string; display: string; }[]; /** * Interactive deployment manager - main entry point */ interactiveDeploymentManager(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle interactive current plugin deployment */ handleInteractiveCurrentDeploy(_options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle interactive config deployment with .tgd.json selection */ handleInteractiveConfigDeploy(_options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Perform actual deployment using DeploymentService */ private performActualDeployment; /** * Load CLI configuration from environment-specific config file */ private loadCliConfig; /** * Save CLI configuration to environment-specific config file */ private saveCliConfig; /** * Interactive store selection with caching */ selectStore(options: { apiUrl?: string; apiKey?: string; verbose?: boolean; forceSelection?: boolean; }): Promise; /** * Fetch stores from API */ private fetchStores; /** * Handle current directory deployment with optional config */ handleCurrentDirectoryDeployWithConfig(_options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }, configPath?: string): Promise; /** * Handle interactive list deployments with tree view */ handleInteractiveListDeployments(_options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle interactive promotion to custom domain */ handleInteractivePromotion(_options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle interactive mount (renamed from promotion) */ handleInteractiveMount(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle interactive alias mount (renamed from promotion) */ handleInteractiveAliasMount(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle force store selection */ handleForceStoreSelection(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Handle interactive deployment management with mount/unmount actions */ handleInteractiveDeploymentManagement(options: { storeId?: string; verbose?: boolean; apiUrl?: string; apiKey?: string; }): Promise; /** * Show actions for a specific deployment */ private showDeploymentActions; /** * Handle mounting deployment to alias */ private handleDeploymentMountAlias; /** * Perform the actual mount alias operation with conflict handling */ private performMountAlias; /** * Handle mounting deployment to custom domain */ private handleDeploymentMountDomain; /** * Perform the actual mount domain operation with conflict handling */ private performMountDomain; /** * Handle clean removal of deployment and all its routes */ private handleDeploymentCleanRemove; /** * Handle unmounting from deployment */ private handleDeploymentUnmount; /** * Handle unmounting using new mount data structure */ private handleDeploymentUnmountNew; }