@tableau/taco-toolkit
Version:
Tableau Connector Toolkit
27 lines (26 loc) • 1.18 kB
TypeScript
import * as ajax from '../../../../shared/app-transport/ajax';
import { ForwardedRequest } from '../../../../shared/types/app-connector-types';
import { ApiPermission } from '../../../../shared/types/permission';
import { NetworkAdapter } from '../../../modules/network-adapter';
type ForwardedResponse = SuccessResponse | ErrorResponse;
interface SuccessResponse {
state: 'success';
statusCode: number;
response: ajax.AjaxResponse;
}
interface ErrorResponse {
state: 'error';
statusCode: number;
error: object | string;
}
export declare function handleRequestForward(networkAdapter: NetworkAdapter, forwardedRequest: ForwardedRequest, apiPermission: ApiPermission): Promise<ForwardedResponse>;
export declare function isValidForwardedRequest(value: unknown): value is ForwardedRequest;
/**
* Log forwarded request infos.
*
* Forwarded requests are used by connectors to talk to external resources, so
* the requests may contain user sensitive infos and credentials. The function
* makes sure we only log insensitive infos for debugging purpose.
*/
export declare function logForwardedRequest(forwardedRequest: ForwardedRequest): void;
export {};