ApiRequest overview
HTTP request declaration.
Added in v1.0.0
Table of contents
getters
getBodySchema
Signature
export declare const getBodySchema: <B, P, Q, H, R>(
request: ApiRequest<B, P, Q, H, R>
) => Schema.Schema<B, any, R> | ApiSchema.Ignored
Added in v1.0.0
getHeadersSchema
Signature
export declare const getHeadersSchema: <B, P, Q, H, R>(
request: ApiRequest<B, P, Q, H, R>
) => Schema.Schema<H, any, R> | ApiSchema.Ignored
Added in v1.0.0
getPathSchema
Signature
export declare const getPathSchema: <B, P, Q, H, R>(
request: ApiRequest<B, P, Q, H, R>
) => Schema.Schema<P, any, R> | ApiSchema.Ignored
Added in v1.0.0
getQuerySchema
Signature
export declare const getQuerySchema: <B, P, Q, H, R>(
request: ApiRequest<B, P, Q, H, R>
) => Schema.Schema<Q, any, R> | ApiSchema.Ignored
Added in v1.0.0
models
ApiRequest (interface)
Signature
export interface ApiRequest<B, P, Q, H, R> extends ApiRequest.Variance<B, P, Q, H, R> {}
Added in v1.0.0
ApiRequest (namespace)
Added in v1.0.0
Variance (interface)
Signature
export interface Variance<B, P, Q, H, R> {
readonly [TypeId]: {
readonly _B: Types.Invariant<B>
readonly _P: Types.Invariant<P>
readonly _Q: Types.Invariant<Q>
readonly _H: Types.Invariant<H>
readonly _R: Types.Covariant<R>
}
}
Added in v1.0.0
Any (type alias)
Any request with all Body
, Path
, Query
and Headers
set to any
.
Signature
export type Any = ApiRequest<any, any, any, any, any>
Added in v1.0.0
Body (type alias)
Signature
export type Body<Request> = [Request] extends [ApiRequest<infer B, any, any, any, any>] ? B : never
Added in v1.0.0
Context (type alias)
Signature
export type Context<Request> = [Request] extends [ApiRequest<any, any, any, any, infer R>] ? R : never
Added in v1.0.0
Default (type alias)
Default request.
Signature
export type Default = ApiRequest<ApiSchema.Ignored, ApiSchema.Ignored, ApiSchema.Ignored, ApiSchema.Ignored, never>
Added in v1.0.0
Headers (type alias)
Signature
export type Headers<Request> = [Request] extends [ApiRequest<any, any, any, infer H, any>] ? H : never
Added in v1.0.0
Path (type alias)
Signature
export type Path<Request> = [Request] extends [ApiRequest<any, infer P, any, any, any>] ? P : never
Added in v1.0.0
Query (type alias)
Signature
export type Query<Request> = [Request] extends [ApiRequest<any, any, infer Q, any, any>] ? Q : never
Added in v1.0.0
modifications
setBody
Signature
export declare const setBody: <B, R2>(
schema: Schema.Schema<B, any, R2>
) => <_, P, Q, H, R1>(endpoint: ApiRequest<_, P, Q, H, R1>) => ApiRequest<B, P, Q, H, R1 | R2>
Added in v1.0.0
setHeaders
Signature
export declare const setHeaders: <H, R2>(
schema: Schema.Schema<H, any, R2>
) => <B, P, Q, _, R1>(endpoint: ApiRequest<B, P, Q, _, R1>) => ApiRequest<B, P, Q, H, R1 | R2>
Added in v1.0.0
setPath
Signature
export declare const setPath: <P, R2>(
schema: Schema.Schema<P, any, R2>
) => <B, _, Q, H, R1>(endpoint: ApiRequest<B, _, Q, H, R1>) => ApiRequest<B, P, Q, H, R1 | R2>
Added in v1.0.0
setQuery
Signature
export declare const setQuery: <Q, R2>(
schema: Schema.Schema<Q, any, R2>
) => <B, P, _, H, R1>(endpoint: ApiRequest<B, P, _, H, R1>) => ApiRequest<B, P, Q, H, R1 | R2>
Added in v1.0.0
type id
TypeId
Signature
export declare const TypeId: typeof TypeId
Added in v1.0.0
TypeId (type alias)
Signature
export type TypeId = typeof TypeId
Added in v1.0.0