cecon-interfaces
Version:
Interfaces de Projetos Cecon
37 lines (36 loc) • 1.32 kB
TypeScript
import { EPayuioActivationStatus } from '../../activation-key/enums/activation-key-status.enum';
import { IPayioPermission } from '../../permissions';
import { EPayioJwtTokenType } from '../enums';
import { IPayioJwtPayloadApp } from './i-payload-app';
import { IPayioJwtPayloadDevice } from './i-payload-device';
import { IPayioJwtPayloadInfo } from './i-payload-info';
import { IPayioJwtPayloadUser } from './i-payload-user';
export interface IPayioJwtPayload {
app: IPayioJwtPayloadApp | null;
/**
* (Audiência): Identifica os destinatários pretendidos do JWT (sua aplicação).
* Pode ser uma string única ou um array de strings para múltiplas audiências.
*/
aud: string | string[];
device: IPayioJwtPayloadDevice | null;
distributorId: string | null;
/**
* (Expiração): Timestamp de quando o JWT expira
*/
exp?: number;
/**
* (Emitido em): Timestamp de quando o JWT foi emitido
*/
iat: number;
info: IPayioJwtPayloadInfo | null;
activationStatus: EPayuioActivationStatus;
/**
* (Emissor): Identifica quem emitiu o JWT (o domínio da sua aplicação).
*/
iss: string;
jti: string;
permissions: IPayioPermission[];
sub: string;
type: EPayioJwtTokenType | null;
user: IPayioJwtPayloadUser | null;
}