@altostra/core
Version:
Core library for shared types and logic
13 lines (12 loc) • 1.28 kB
TypeScript
import type { AnyTypeValidation, TypeValidation } from '@altostra/type-validations';
import type { Integration } from "../Integration";
export declare const LOG_SHIPPING_INTEGRATION_TYPE = "log-shipping";
export declare type LogShippingIntegrationType = typeof LOG_SHIPPING_INTEGRATION_TYPE;
export interface LogShippingIntegrationData<TVendor extends string = string, TData = object> {
vendor: TVendor;
vendorData: TData;
}
export declare function createLogShippingIntegrationDataValidation<TVendor extends string, TData>(vendor: TVendor, dataValidation: AnyTypeValidation<TData>): TypeValidation<LogShippingIntegrationData<TVendor, TData>>;
export declare type LogShippingIntegration<TVendor extends string = string, TData = object> = Integration<LogShippingIntegrationType, LogShippingIntegrationData<TVendor, TData>>;
export declare function createLogShippingIntegrationValidation<TVendor extends string, TData>(integrationDataValidation: AnyTypeValidation<LogShippingIntegrationData<TVendor, TData>>): TypeValidation<LogShippingIntegration<TVendor, TData>>;
export declare function createLogShippingIntegrationValidation<TVendor extends string, TData>(vendor: TVendor, dataValidation: AnyTypeValidation<TData>): TypeValidation<LogShippingIntegration<TVendor, TData>>;