@copytrade/unified-broker
Version:
Unified broker interface library for Indian stock market brokers with plugin architecture
53 lines • 1.64 kB
TypeScript
/**
* Unified Broker Factory
* Creates instances of the new unified broker services
* Eliminates the need for broker-specific logic in the unified manager
*/
import { IUnifiedBrokerService, IBrokerModuleFactory } from '../interfaces/UnifiedBrokerResponse';
export declare class UnifiedBrokerFactory implements IBrokerModuleFactory {
private static instance;
private supportedBrokers;
private constructor();
static getInstance(): UnifiedBrokerFactory;
/**
* Register default broker implementations
*/
private registerDefaultBrokers;
/**
* Create a unified broker service instance
*/
createBroker(brokerName: string): IUnifiedBrokerService;
/**
* Get list of supported brokers
*/
getSupportedBrokers(): string[];
/**
* Check if a broker is supported
*/
isBrokerSupported(brokerName: string): boolean;
/**
* Register a custom broker implementation
*/
registerBroker(brokerName: string, brokerFactory: () => IUnifiedBrokerService): void;
/**
* Unregister a broker
*/
unregisterBroker(brokerName: string): boolean;
/**
* Get factory information
*/
getFactoryInfo(): {
totalBrokers: number;
supportedBrokers: string[];
factoryType: string;
};
}
/**
* Convenience function to create a unified broker instance
*/
export declare function createUnifiedBroker(brokerName: string): IUnifiedBrokerService;
/**
* Convenience function to get supported brokers
*/
export declare function getSupportedUnifiedBrokers(): string[];
//# sourceMappingURL=UnifiedBrokerFactory.d.ts.map