import { RegisteredIntegration, RegisteredInterface } from '../types';
/**
 * Configuration for the agent registry
 */
export interface AgentRegistryConfig {
    integrations: RegisteredIntegration[];
    interfaces: RegisteredInterface[];
    interfacesMapping: Record<string, any>;
}
/**
 * Singleton class for managing agent configuration and primitives
 * Provides a single source of truth for all runtime components
 */
declare class AgentRegistry {
    private _data;
    /**
     * Initialize the registry with configuration
     * This should be called once during bot startup
     */
    initialize(data: AgentRegistryConfig): void;
    get integrations(): RegisteredIntegration[];
    get interfaces(): RegisteredInterface[];
    get interfacesMapping(): Record<string, any>;
    private ensureInitialized;
}
/**
 * Export singleton instance
 * We need this because the import of this file can happen from different entrypoints and we want
 * to share the same instance across them.
 */
export declare const agentRegistry: AgentRegistry;
export {};
//# sourceMappingURL=agent-registry.d.ts.map