UNPKG

@altostra/core

Version:

Core library for shared types and logic

20 lines (19 loc) 1.06 kB
import type { TypeValidation, ValidationRejection } from '@altostra/type-validations'; import type { Auth0Integration, Auth0IntegrationType } from "./Auth0"; import type { LogShippingIntegration, LogShippingIntegrationType } from "./LogShipping"; export * from "./Auth0"; export * from "./LogShipping"; export * from "./Integration"; export * from "./IntegrationId"; export declare type IntegrationType = Auth0IntegrationType | LogShippingIntegrationType; export declare type IntegrationByType = { [K in Auth0IntegrationType]: Auth0Integration; } & { [K in LogShippingIntegrationType]: LogShippingIntegration; }; export declare type KnownIntegration = IntegrationByType[IntegrationType]; export declare type IntegrationValidationByType = { [K in keyof IntegrationByType]: TypeValidation<IntegrationByType[K]>; }; export declare const integrationValidationByType: IntegrationValidationByType; export declare function isKnownIntegration(integration: unknown, rejections?: (rejection: ValidationRejection) => unknown): integration is KnownIntegration;