import { AxiosInstance } from "axios"; import { IParams } from "./interfaces"; declare class Tester { /** * Instância do axios * @memberof Tester */ api: AxiosInstance; /** * URL base da API * @memberof Tester */ baseUrl: string; /** * Porta da API * @memberof Tester */ port: number; /** * Construtor * @constructor * @param baseURL URL base da API * @param port Porta da API */ constructor(baseURL: string, port: number); /** * Muda a URL base da API * @param baseURL URL base da API */ changeBaseUrl(baseURL: string): void; /** * Muda a porta da API * @param port Porta da API */ changePort(port: number): void; /** * Método recursivo para comparar a tipagem percorrendo objetos * @param answer Resposta esperada * @param response Resposta obtida * @returns Comparação da tipagem das respostas */ checkType(answer: any, response: any): boolean; /** * Método para testar uma rota * @param answer Resposta esperada * @param url Rota * @param method Método * @param comparation Tipo de comparação * @param params Parâmetros da requisição * @param body Corpo da requisição * @param headers Cabeçalho da requisição * @returns Objeto com o resultado do teste */ testOne(answer: any, url: string, method?: "GET" | "POST" | "PUT" | "DELETE", comparation?: "EQUAL" | "TYPE" | "INTERFACE", params?: { [key: string]: string; }, body?: { [key: string]: any; }, headers?: { [key: string]: string; }): Promise<{ success: boolean; response: any; }>; test(routes: IParams[]): Promise; } /** * Função para criar uma instância do teste * @param baseURL URL base da API * @param port Porta da API * @returns Instância do teste */ declare const Testinha: (baseURL: string, port: number) => Tester; export default Testinha; export { IParams };