import {HTTPBody} from '@fastify-modular/route'; import {pito} from 'pito'; import {AccessTokenLifetime, NeedLogin, RefreshTokenLifetime} from '..'; // =========================================================================================== export const RefreshInput = pito.Obj({ refresh: pito.Str(), }); export type RefreshInput = pito.Type; // =========================================================================================== export const RefreshOutput = pito.Obj({ token : pito.Str(), refresh: pito.Opt(pito.Str()), }); export type RefreshOutput = pito.Type; // =========================================================================================== export const RefreshOption = pito.Obj({ token : pito.Opt(pito.Enums(AccessTokenLifetime)), refresh: pito.Opt(pito.Enums(RefreshTokenLifetime)), }); export type RefreshOption = pito.Type; // =========================================================================================== // export const Refresh = HTTPBody('PUT', '/api/v1/auth/refresh', 'auth') .body(RefreshInput) .query(RefreshOption) .response(RefreshOutput) .presets(NeedLogin) .build(); // ===========================================================================================