import { Promisable } from "type-fest";
import { Status } from "../utils/status.js";
export declare type OutgoingJsonRequestDefault
= {
readonly parameters: P;
} & OutgoingJsonContainer;
export declare type OutgoingJsonRequest = {
readonly parameters: P;
readonly contentType: C;
} & OutgoingJsonContainer;
export declare type OutgoingJsonResponseDefault = {
readonly status: S;
readonly parameters: P;
} & OutgoingJsonContainer;
export declare type OutgoingJsonResponse = {
readonly status: S;
readonly parameters: P;
readonly contentType: C;
} & OutgoingJsonContainer;
export declare type IncomingJsonRequest = {
readonly parameters: P;
readonly contentType: C;
} & IncomingJsonContainer;
export declare type IncomingJsonResponse = {
readonly status: S;
readonly parameters: P;
readonly contentType: C;
} & IncomingJsonContainer;
export declare type OutgoingJsonContainer = {
stream(signal?: AbortSignal): AsyncIterable;
} | {
entity(): Promisable;
} | {
entities(signal?: AbortSignal): AsyncIterable;
};
export declare type IncomingJsonContainer = {
stream(signal?: AbortSignal): AsyncIterable;
} & {
entity(): Promisable;
} & {
entities(signal?: AbortSignal): AsyncIterable;
};
export declare function serializeOutgoingJsonContainer(container: OutgoingJsonContainer, mapError?: (error: Error) => Error): (signal?: AbortSignal | undefined) => AsyncIterable;
export declare function deserializeIncomingJsonContainer(stream: (signal?: AbortSignal) => AsyncIterable, mapError?: (error: Error) => Error): {
stream: (signal?: AbortSignal | undefined) => AsyncIterable;
entity(): Promise;
entities(signal?: AbortSignal | undefined): AsyncIterable;
};
export declare function serializeJsonEntity(value: Promisable): AsyncIterable;
export declare function serializeJsonEntities(iterable: AsyncIterable): AsyncIterable;
export declare function deserializeJsonEntity(stream: (signal?: AbortSignal) => AsyncIterable): Promise;
export declare function deserializeJsonEntities(stream: (signal?: AbortSignal) => AsyncIterable, signal?: AbortSignal): AsyncIterable;