1 |
|
2 | import { EventEmitter } from 'events';
|
3 | export interface ConnectOptions {
|
4 | }
|
5 | export interface DataHandler {
|
6 | (data: Buffer): Promise<Buffer>;
|
7 | }
|
8 | export interface MoneyHandler {
|
9 | (amount: string): Promise<void>;
|
10 | }
|
11 | export interface PluginInstance extends EventEmitter {
|
12 | connect(options: ConnectOptions): Promise<void>;
|
13 | disconnect(): Promise<void>;
|
14 | isConnected(): boolean;
|
15 | sendData(data: Buffer): Promise<Buffer>;
|
16 | sendMoney(amount: string): Promise<void>;
|
17 | registerDataHandler(dataHandler: DataHandler): void;
|
18 | deregisterDataHandler(): void;
|
19 | registerMoneyHandler(moneyHandler: MoneyHandler): void;
|
20 | deregisterMoneyHandler(): void;
|
21 | getAdminInfo?(): Promise<object>;
|
22 | sendAdminInfo?(info: object): Promise<object>;
|
23 | }
|