/** @packageDocumentation * ComponentManager zur Verwaltung aller Komponenten * * Letzte Aenderung: 28.06.2021 * Status: rot * * @module core/component * @author SB */ import { SpeechErrorFunc } from '../interface/speech-function.type'; import { IMessage } from './../message/message.interface'; import { IComponent, ComponentSendMessageFunc } from './component.interface'; export declare class ComponentManager { private static mComponentList; /** * statische ErrorBase fuer die Fehlerbehandlung */ private static mErrorBase; private constructor(); static setErrorOutputOn(): void; static setErrorOutputOff(): void; /** * Eintragen einer Fehlerbehandlungsfunktion * * @param {SpeechErrorFunc} aErrorFunc - Fehlerbehandlungsfunktion */ static setErrorOutputFunc(aErrorFunc: SpeechErrorFunc): void; /** * Rueckgabe der Anzahl vorhandener Komponenten * * @return {number} size - Anzahl der Komponenten in der Liste */ static getSize(): number; /** * Rueckgabe aller vorhandenen Komponenten-Namen * * @return {Array} Rueckgabe aller Plugin-Namen als Liste */ static getNameList(): Array; /** * Rueckgabe aller vorhandenen Komponenten-Namen zu einem Komponenten-Typ * * @param aComponentType - Name des Komponenten-Typs * * @return Rueckgabe aller Komponenten-Namen zum Typ als Liste */ static getNameTypeList(aComponentTypeName: string): string[]; /** * Rueckgabe aller vorhandenen Komponenten-Typen * * @return Rueckgabe aller Komponenten-Typen als Liste */ static getTypeList(): string[]; /** * Rueckgabe einer Komponente * * @param {string} aComponentName - Name der Komponente * * @return {IComponent} - Rueckgabe der Komponente */ static find(aComponentName: string): IComponent; /** * Eintragen einer Komponente * * @param {string} aComponentName - Name der Komponente * @param {IComponent} aComponent - Instanz der Komponente * * @return {number} errorCode(0,-1) - Fehlercode */ static insert(aComponentName: string, aComponent: IComponent): number; /** * Entfernt die Komponente aus der Liste * * @param {string} aComponentName - Name der Komponente * * @return {number} errorCode (0,-1) - Fehlercode */ static remove(aComponentName: string): number; /** * Entfernt alle Komponenten. Die Komponenten werden vorher mit done() freigegeben. * * @return {number} errorCode (0,-1) - Fehlercode */ static clear(): number; /** * senden einer Nachricht an eine Komponente * * @param aMessage - zu sendendes Nachrichten-Objekt */ static sendMessage(aMessage: IMessage): number; /** * Rueckgabe der Nachrichtensendefunktion * * @return {ComponentSendMessageFunc} handleMessageFunc */ static getSendMessageFunc(): ComponentSendMessageFunc; }