import { ResponseValidationError } from "../models/errors/responsevalidationerror.js"; import { SDKError } from "../models/errors/sdkerror.js"; import { Result } from "../types/fp.js"; import { StatusCodePredicate } from "./http.js"; export type Encoding = "jsonl" | "json" | "text" | "bytes" | "stream" | "sse" | "nil" | "fail"; type Schema = { parse(raw: unknown): T; }; type MatchOptions = { ctype?: string; hdrs?: boolean; key?: string; sseSentinel?: string; }; export type ValueMatcher = MatchOptions & { enc: Encoding; codes: StatusCodePredicate; schema: Schema; }; export type ErrorMatcher = MatchOptions & { enc: Encoding; codes: StatusCodePredicate; schema: Schema; err: true; }; export type FailMatcher = { enc: "fail"; codes: StatusCodePredicate; }; export type Matcher = ValueMatcher | ErrorMatcher | FailMatcher; export declare function jsonErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function json(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function jsonl(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function jsonlErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function textErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function text(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function bytesErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function bytes(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function streamErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function stream(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function sseErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function sse(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function nilErr(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ErrorMatcher; export declare function nil(codes: StatusCodePredicate, schema: Schema, options?: MatchOptions): ValueMatcher; export declare function fail(codes: StatusCodePredicate): FailMatcher; export type MatchedValue = Matchers extends Matcher[] ? T : never; export type MatchedError = Matchers extends Matcher[] ? E : never; export type MatchFunc = (response: Response, request: Request, options?: { resultKey?: string; extraFields?: Record; }) => Promise<[result: Result, raw: unknown]>; export declare function match(...matchers: Array>): MatchFunc; /** * Iterates over a Headers object and returns an object with all the header * entries. Values are represented as an array to account for repeated headers. */ export declare function unpackHeaders(headers: Headers): Record; export {}; //# sourceMappingURL=matchers.d.ts.map