import { inject, injectable } from "tsyringe"; import { NotifierCallbacks } from "@spt/callbacks/NotifierCallbacks"; import { RouteAction, StaticRouter } from "@spt/di/Router"; import { IGetBodyResponseData } from "@spt/models/eft/httpResponse/IGetBodyResponseData"; import { INotifierChannel } from "@spt/models/eft/notifier/INotifier"; import { ISelectProfileResponse } from "@spt/models/eft/notifier/ISelectProfileResponse"; @injectable() export class NotifierStaticRouter extends StaticRouter { constructor(@inject("NotifierCallbacks") protected notifierCallbacks: NotifierCallbacks) { super([ new RouteAction( "/client/notifier/channel/create", async ( url: string, info: any, sessionID: string, output: string, ): Promise> => { return this.notifierCallbacks.createNotifierChannel(url, info, sessionID); }, ), new RouteAction( "/client/game/profile/select", async ( url: string, info: any, sessionID: string, output: string, ): Promise> => { return this.notifierCallbacks.selectProfile(url, info, sessionID); }, ), ]); } }