HttpApiGroup
Constructors
Guards
isHttpApiGroup
Added in v1.0.0
Source
Signature
declare function isHttpApiGroup(u: unknown): u is Any;Models
Signature
interface ApiGroup<ApiId extends string, Name extends string> {
readonly _: typeof _;
readonly apiId: ApiId;
readonly name: Name;
}HttpApiGroup
Added in v1.0.0
Source
HttpApiGroup interface
Added in v1.0.0
Source
An HttpApiGroup is a collection of HttpApiEndpoints. You can use an HttpApiGroup to represent a portion of your domain.
The endpoints can be implemented later using the HttpApiBuilder.group api.
Signature
interface HttpApiGroup<
out Id extends string,
out Endpoints extends HttpApiEndpoint.HttpApiEndpoint.Any = never,
in out Error = HttpApiDecodeError,
out R = never,
out TopLevel extends true | false = false,
> extends Pipeable {
constructor(_: never);
readonly [TypeId]: typeof TypeId;
readonly annotations: Context<never>;
readonly endpoints: Record.ReadonlyRecord<string, Endpoints>;
readonly errorSchema: any;
readonly identifier: Id;
readonly middlewares: ReadonlySet<TagClassAny>;
readonly topLevel: TopLevel;
add<A extends Any>(endpoint: A): HttpApiGroup<Id, Endpoints | A, Error, R, TopLevel>;
addError<A, I, RX>(
schema: any,
annotations?: {
readonly status?: number;
},
): HttpApiGroup<Id, Endpoints, Error | A, R | RX, TopLevel>;
annotate<I, S>(tag: Tag<I, S>, value: S): HttpApiGroup<Id, Endpoints, Error, R, TopLevel>;
annotateContext<I>(context: Context<I>): HttpApiGroup<Id, Endpoints, Error, R, TopLevel>;
annotateEndpoints<I, S>(
tag: Tag<I, S>,
value: S,
): HttpApiGroup<Id, Endpoints, Error, R, TopLevel>;
annotateEndpointsContext<I>(context: Context<I>): HttpApiGroup<Id, Endpoints, Error, R, TopLevel>;
middleware<I extends AnyId, S>(
middleware: Tag<I, S>,
): HttpApiGroup<Id, Endpoints, Error | Error<I>, R | I | ErrorContext<I>, TopLevel>;
middlewareEndpoints<I extends AnyId, S>(
middleware: Tag<I, S>,
): HttpApiGroup<Id, AddContext<Endpoints, I>, Error, R, TopLevel>;
prefix(prefix: `/${string}`): HttpApiGroup<Id, Endpoints, Error, R, TopLevel>;
}
An
HttpApiGroupis a collection ofHttpApiEndpoints. You can use anHttpApiGroupto represent a portion of your domain.The endpoints can be implemented later using the
HttpApiBuilder.groupapi.