_respostas/dist-import/respostas.d.ts
2024-08-11 12:11:08 -03:00

102 lines
3.7 KiB
TypeScript

export declare enum codigosResposta {
sucesso = 200,
erroConhecido = 400,
erroPermissao = 401,
erroNaoEncontrado = 404,
erroDesconhecido = 500,
tempoEsgotado = 504
}
export type tipoRespostaSucesso<T> = {
cod: codigosResposta.sucesso;
valor: T;
mensagem: undefined;
eErro: false;
eCerto: true;
detalhes?: string[];
};
export type tipoRespostaErro = {
cod: codigosResposta.erroConhecido | codigosResposta.erroDesconhecido | codigosResposta.erroPermissao | codigosResposta.erroNaoEncontrado | codigosResposta.tempoEsgotado;
valor: undefined;
mensagem: string;
eErro: true;
eCerto: false;
detalhes?: string[];
};
export type tipoResposta<T> = tipoRespostaSucesso<T> | tipoRespostaErro;
export type tipoPrErroInterno = {
erro: any;
mensagem?: string;
local: string;
__filename?: string;
};
export declare const gerarRespostas: (registrarErroInterno: (op: tipoPrErroInterno) => Partial<tipoRespostaErro>) => {
/**
* Gera uma resposta de sucesso
*/
valor: <T>(valor: T, detalhes?: string[]) => tipoRespostaSucesso<T>;
/**
* Gera uma resposta de sucesso com valor true
*/
valorTrue: (detalhes?: string[]) => tipoRespostaSucesso<true>;
/**
* Gera uma resposta de erro conhecido
*/
erro: (mensagem: string, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro de permissão,será necessário fazer o login novamente
*/
erroPermissao: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro desconhecido, geralmente tem origem de um exception
*/
erroInterno: (op: tipoPrErroInterno) => tipoRespostaErro;
/**
* Gera uma resposta de erro quando um registro não é encontrado ou sua execução depende de um registro existente
*/
naoEncontrado: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro quando o tempo de resposta é esgotado
*/
tempoEsgotado: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro quando o tempo de resposta é esgotado
*/
erroEspera: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
};
/**
* Uso de respostas em comuns
*/
export declare const respostaComuns: {
/**
* Gera uma resposta de sucesso
*/
valor: <T>(valor: T, detalhes?: string[]) => tipoRespostaSucesso<T>;
/**
* Gera uma resposta de sucesso com valor true
*/
valorTrue: (detalhes?: string[]) => tipoRespostaSucesso<true>;
/**
* Gera uma resposta de erro conhecido
*/
erro: (mensagem: string, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro de permissão,será necessário fazer o login novamente
*/
erroPermissao: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro desconhecido, geralmente tem origem de um exception
*/
erroInterno: (op: tipoPrErroInterno) => tipoRespostaErro;
/**
* Gera uma resposta de erro quando um registro não é encontrado ou sua execução depende de um registro existente
*/
naoEncontrado: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro quando o tempo de resposta é esgotado
*/
tempoEsgotado: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
/**
* Gera uma resposta de erro quando o tempo de resposta é esgotado
*/
erroEspera: (mensagem?: string | undefined | null, detalhes?: string[]) => tipoRespostaErro;
};