import type { BaseConnector } from '../../connector/BaseConnector.js'; import type { ConnectorRegistry } from '../../registry/connector/definitions.js'; import type { AuthConfig, AuthType, ConnectorConfig, ConnectorDefinition, ConnectorEventListener, ConnectorExecuteParams, ConnectorExecuteResult, ConnectorInstance, ConnectorOperationOptions } from '../../types/connector/index.js'; import type { ConnectorId, ConnectorInstanceId } from '../../types/ids/index.js'; import { type Logger } from '../../utils/logger.js'; export interface ConnectorManagerConfig { registry: ConnectorRegistry; /** * A pre-built, already-correlated logger. A caller that already knows * something this manager cannot derive on its own — which tenant it was * constructed for, most concretely (see `TenantConnectorManager`) — * supplies one here so every record this manager's connectors log * carries that correlation. Falls back to `getRootLogger()` when absent, * same as before this field existed. */ log?: Logger; } export declare class ConnectorManager { private registry; private instances; private liveConnectors; private admissions; private listeners; private log; constructor(config: ConnectorManagerConfig); on(listener: ConnectorEventListener): void; off(listener: ConnectorEventListener): void; createInstance(config: ConnectorConfig, connector: BaseConnector): Promise; connect(instanceId: ConnectorInstanceId): Promise; disconnect(instanceId: ConnectorInstanceId): Promise; healthCheck(instanceId: ConnectorInstanceId, options?: ConnectorOperationOptions): Promise; execute(params: ConnectorExecuteParams): Promise; removeInstance(instanceId: ConnectorInstanceId): Promise; getRegistry(): ConnectorRegistry; getInstance(instanceId: ConnectorInstanceId): ConnectorInstance | undefined; getConnector(instanceId: ConnectorInstanceId): BaseConnector | undefined; getInstanceConnectorId(instanceId: ConnectorInstanceId): ConnectorId; getInstanceDefinition(instanceId: ConnectorInstanceId): ConnectorDefinition; supportsAuth(instanceId: ConnectorInstanceId, authType: AuthType): boolean; /** Validate before mutating the live instance's effective credential. */ setInstanceAuth(instanceId: ConnectorInstanceId, auth: AuthConfig): void; listInstances(): ConnectorInstance[]; listInstancesByConnector(connectorId: ConnectorId): ConnectorInstance[]; listConnectedInstances(): ConnectorInstance[]; disconnectAll(): Promise; private getInstanceOrThrow; private getConnectorOrThrow; private getAdmissionOrThrow; private requireSupportedAuth; private updateStatus; private emit; } //# sourceMappingURL=lifecycle.d.ts.map