@evanion/nestjs-correlation-id
Version:
Transparently forward or add correlation id to all requests
75 lines (74 loc) • 3.61 kB
TypeScript
import { HttpModuleOptions } from '@nestjs/axios';
import { CorrelationModule } from './correlation.module';
import { CorrelationService } from './correlation.service';
export declare const withCorrelation: (config?: HttpModuleOptions) => {
imports: (typeof CorrelationModule)[];
useFactory: (correlationService: CorrelationService) => Promise<{
headers: {
"X-Correlation-Id": string;
} | {
"X-Correlation-Id": string;
Accept?: import("axios").AxiosHeaderValue;
"Content-Length"?: import("axios").AxiosHeaderValue;
"User-Agent"?: import("axios").AxiosHeaderValue;
"Content-Encoding"?: import("axios").AxiosHeaderValue;
Authorization?: import("axios").AxiosHeaderValue;
'Content-Type'?: import("axios").AxiosHeaderValue;
link?: import("axios").AxiosHeaders;
head?: import("axios").AxiosHeaders;
options?: import("axios").AxiosHeaders;
get?: import("axios").AxiosHeaders;
post?: import("axios").AxiosHeaders;
put?: import("axios").AxiosHeaders;
delete?: import("axios").AxiosHeaders;
patch?: import("axios").AxiosHeaders;
purge?: import("axios").AxiosHeaders;
unlink?: import("axios").AxiosHeaders;
common?: import("axios").AxiosHeaders;
};
url?: string;
method?: string;
baseURL?: string;
transformRequest?: import("axios").AxiosRequestTransformer | import("axios").AxiosRequestTransformer[];
transformResponse?: import("axios").AxiosResponseTransformer | import("axios").AxiosResponseTransformer[];
params?: any;
paramsSerializer?: import("axios").CustomParamsSerializer | import("axios").ParamsSerializerOptions;
data?: any;
timeout?: number;
timeoutErrorMessage?: string;
withCredentials?: boolean;
adapter?: (string | import("axios").AxiosAdapter) | (string | import("axios").AxiosAdapter)[];
auth?: import("axios").AxiosBasicCredentials;
responseType?: import("axios").ResponseType;
responseEncoding?: string;
xsrfCookieName?: string;
xsrfHeaderName?: string;
onUploadProgress?: (progressEvent: import("axios").AxiosProgressEvent) => void;
onDownloadProgress?: (progressEvent: import("axios").AxiosProgressEvent) => void;
maxContentLength?: number;
validateStatus?: (status: number) => boolean;
maxBodyLength?: number;
maxRedirects?: number;
maxRate?: number | [number, number];
beforeRedirect?: (options: Record<string, any>, responseDetails: {
headers: Record<string, string>;
}) => void;
socketPath?: string;
transport?: any;
httpAgent?: any;
httpsAgent?: any;
proxy?: false | import("axios").AxiosProxyConfig;
cancelToken?: import("axios").CancelToken;
decompress?: boolean;
transitional?: import("axios").TransitionalOptions;
signal?: import("axios").GenericAbortSignal;
insecureHTTPParser?: boolean;
env?: {
FormData?: new (...args: any[]) => object;
};
formSerializer?: import("axios").FormSerializerOptions;
family?: 4 | 6;
lookup?: ((hostname: string, options: object, cb: (err: Error, address: string, family: number) => void) => void) | ((hostname: string, options: object) => Promise<string | [address: string, family: number]>);
}>;
inject: (typeof CorrelationService)[];
};