import type { HyperPlugin, RequestContext, SendRequest } from "@hyperttp/types"; type RestHeaders = Record; type RestInput = Record & { body?: unknown; headers?: RestHeaders; }; export interface SerializerOptions { shouldSerialize?: (request: SendRequest, ctx?: RequestContext) => boolean; getBody?: (request: SendRequest, ctx?: RequestContext) => unknown; setBody?: (request: SendRequest, body: TSerialized, ctx?: RequestContext) => SendRequest; serialize?: (body: unknown, request: SendRequest, ctx?: RequestContext) => TSerialized; } export interface SerializableRequest extends SendRequest { } declare module "@hyperttp/types" { interface HyperClientOptions { serializer?: SerializerOptions; } } export declare function withSerializer(options?: SerializerOptions): HyperPlugin; export {}; //# sourceMappingURL=plugin.d.ts.map