import { Buffer } from 'buffer'; import { Stream } from "stream"; import { Config } from "./Config"; import { KyofuucObject } from "../helper"; export declare const RequestType: { TEXT: string; JSON: string; STREAM: string; BUFFER: string; RAW_TEXT: string; RAW_JSON: string; FORM_DATA: string; ARRAY_BUFFER: string; URL_SEARCH_PARAMS: string; }; export type RequestTransformer = (data: any) => { buffer: Buffer | string; contentType: string; }; export interface Request { key?: string; url?: string; __cached__?: boolean; __cached_expires_at__?: Date; } export declare function textRequestTransformer(data: string): { contentType: string; buffer: Buffer; }; export declare function rawTextRequestTransformer(data: string): { buffer: string; contentType: string; }; export declare function jsonRequestTransformer(data: object): { contentType: string; buffer: Buffer; }; export declare function rawJsonRequestTransformer(data: object): { contentType: string; buffer: string; }; export declare function bufferRequestTransformer(data: Buffer): { buffer: Buffer; contentType: string; }; export declare function arrayBufferRequestTransformer(data: ArrayBuffer): { buffer: Buffer; contentType: string; }; export declare function urlSearchParamsRequestTransformer(data: URLSearchParams): { buffer: Buffer; contentType: string; }; export declare function formDataRequestTransformer(data: any): { buffer: any; contentType: string; }; export declare function streamRequestTransformer(data: Stream): { buffer: Buffer; contentType: string; }; export declare const RequestProcessor: { _RegisteredTransformers: KyofuucObject; register(type: string, transformer: RequestTransformer): void; unregister(type: string): void; transform(type: string, data: any): { buffer: Buffer | string; contentType: string; }; }; export declare function transformRequestData(config: Config, data: any, contentTypeNotSet: boolean, headers: KyofuucObject, reject: (error: Error) => void): string | Buffer | undefined;