import {
Parameters, ConfigParams,
Descriptor, ICleanable, IConfigurable,
IExecutable, INotifiable, IOpenable,
IReferenceable, IReferences,
IUnreferenceable
} from "pip-services3-commons-nodex";
class MyComponent implements IConfigurable, IReferenceable, IUnreferenceable, IOpenable, IExecutable, INotifiable, ICleanable {
public constructor() { /* Initialize the component */ }
public configure(config: ConfigParams) { /* configure the component */ }
public setReferences(refs: IReferences) { /* set component dependencies */ }
public unsetReferences() { /* unset component references */ }
public isOpen(): boolean { /* return the component open state */ }
public open(correlationId: string): Promise<void> { /* open the component */ }
public close(correlationId: string): Promise<void> { /* close the component */ }
public execute(correlationId: string, args: Parameters): Promise<any> { /* execute the component transaction */ }
public notify(correlationId: string, args: Parameters) { /* notify the component about events */ }
public clear(correlationId: string): Promise<void> { /* clear the component state */ }
}