import { APINamespace, APINamespaceType, ngGET } from "../defs"; import type { structure } from "../../apiStructure/sammoRootAPI"; import type { DefAPINamespace, ExtractError, ExtractQuery, ExtractResponse } from "../../apiStructure/defs"; import { StartSession } from "../ProcDecorator/StartSession"; type BaseAPI = typeof structure.Login.ReqNonce; type RType = ExtractResponse; type EType = ExtractError; type QType = ExtractQuery; const argValidator = undefined; const procDecorator = [ StartSession, ] as const; export const ReqNonce = ngGET(argValidator)(procDecorator)( async (query, ctx) => { const nonce = await ctx.getValue("nonce"); if(nonce !== undefined){ return { loginNonce: nonce, result: true, } } const newNonce = "1234567890"; await ctx.setValue("nonce", newNonce); return { loginNonce: newNonce, result: true, } } ); type BaseAPI2 = APINamespaceType['ReqNonce']; type A = typeof ReqNonce;