2019-09-09 22:39:18 +00:00
|
|
|
import * as plugins from './smartuniverse.plugins';
|
|
|
|
|
2019-09-10 17:36:10 +00:00
|
|
|
export interface IReactionRequestConstructorOptions<T extends plugins.typedrequestInterfaces.ITypedRequest> {
|
|
|
|
method: T['method'];
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ICombinatorPayload<T extends plugins.typedrequestInterfaces.ITypedRequest> {
|
|
|
|
/**
|
|
|
|
* needed for tying responses to requests
|
|
|
|
*/
|
|
|
|
id: string;
|
|
|
|
typedRequestPayload: T;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
export class ReactionRequest<T extends plugins.typedrequestInterfaces.ITypedRequest> {
|
|
|
|
public method: T['method'];
|
|
|
|
|
|
|
|
constructor(optionsArg: IReactionRequestConstructorOptions<T>) {
|
|
|
|
this.method = optionsArg.method;
|
|
|
|
}
|
|
|
|
|
|
|
|
public fireRequest(channelArg) {}
|
|
|
|
}
|