@altostra/core
Version:
Core library for shared types and logic
21 lines (20 loc) • 1.15 kB
TypeScript
import type { Api, ApiType } from "./Api";
import type { ApiEndpoint, ApiEndpointType, ApiProxyEndpoint, ApiProxyEndpointType } from "./ApiEndpoint";
import type { ApiDomainName, ApiDomainNameType } from "./DomainName";
export * from "./Api";
export * from "./ApiEndpoint";
export * from "./DomainName";
export declare type ApiResourceType = ApiDomainNameType | ApiEndpointType | ApiProxyEndpointType | ApiType;
export declare type AnyApiEndpointType = ApiEndpointType | ApiProxyEndpointType;
export declare type ApiResource = Api | ApiDomainName | ApiEndpoint | ApiProxyEndpoint;
export declare type AnyApiEndpoint = ApiEndpoint | ApiProxyEndpoint;
export declare type ApiResourceByType = {
[K in ApiDomainNameType]: ApiDomainName;
} & {
[K in ApiEndpointType]: ApiEndpoint;
} & {
[K in ApiProxyEndpointType]: ApiProxyEndpoint;
} & {
[K in ApiType]: Api;
};
export declare const isApiResource: import("@altostra/type-validations/lib/taggedUnionOf").TaggedUnionValidation<Api | ApiDomainName | ApiEndpoint | ApiProxyEndpoint, "type", "resource.api" | "resource.api.domain-name" | "resource.api.endpoint" | "resource.api.proxy-endpoint">;