UNPKG

the-moby-effect

Version:
114 lines (103 loc) 3.92 kB
/** * Docker in docker engine. * * @since 1.0.0 */ import type * as PlatformError from "@effect/platform/Error"; import type * as FileSystem from "@effect/platform/FileSystem"; import type * as Path from "@effect/platform/Path"; import type * as Layer from "effect/Layer"; import type * as ParseResult from "effect/ParseResult"; import type * as BlobConstants from "./internal/blobs/constants.js"; import type * as MobyConnection from "./MobyConnection.js"; import type * as MobyEndpoints from "./MobyEndpoints.js"; import * as DockerEngine from "./DockerEngine.js"; import * as internal from "./internal/engines/dind.js"; /** * @since 1.0.0 * @category Layers */ export type MakeDindLayerFromPlatformConstructor< PlatformLayerConstructor extends ( connectionOptions: any ) => Layer.Layer<Layer.Layer.Success<DockerEngine.DockerLayer>, unknown, unknown>, SupportedConnectionOptions extends MobyConnection.MobyConnectionOptions = PlatformLayerConstructor extends ( connectionOptions: infer C ) => Layer.Layer<Layer.Layer.Success<DockerEngine.DockerLayer>, infer _E, infer _R> ? C : never, PlatformLayerConstructorError = ReturnType<PlatformLayerConstructor> extends Layer.Layer< Layer.Layer.Success<DockerEngine.DockerLayer>, infer E, infer _R > ? E : never, PlatformLayerConstructorContext = ReturnType<PlatformLayerConstructor> extends Layer.Layer< Layer.Layer.Success<DockerEngine.DockerLayer>, infer _E, infer R > ? R : never, > = < ConnectionOptionsToHost extends SupportedConnectionOptions, ConnectionOptionsToDind extends SupportedConnectionOptions["_tag"], >(options: { exposeDindContainerBy: ConnectionOptionsToDind; connectionOptionsToHost: ConnectionOptionsToHost; dindBaseImage: BlobConstants.RecommendedDindBaseImages; }) => Layer.Layer< Layer.Layer.Success<DockerEngine.DockerLayer>, | MobyEndpoints.ImagesError | MobyEndpoints.SystemsError | MobyEndpoints.VolumesError | ParseResult.ParseError | MobyEndpoints.ContainersError | PlatformLayerConstructorError | (ConnectionOptionsToDind extends "socket" ? PlatformError.PlatformError : never), | PlatformLayerConstructorContext | (ConnectionOptionsToDind extends "socket" ? Path.Path | FileSystem.FileSystem : never) >; /** * @since 1.0.0 * @category Layers */ export const layerNodeJS: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerNodeJS> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerNodeJS); /** * @since 1.0.0 * @category Layers */ export const layerBun: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerBun> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerBun); /** * @since 1.0.0 * @category Layers */ export const layerDeno: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerDeno> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerDeno); /** * @since 1.0.0 * @category Layers */ export const layerUndici: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerUndici> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerUndici); /** * @since 1.0.0 * @category Layers */ export const layerWeb: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerWeb> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerWeb); /** * @since 1.0.0 * @category Layers */ export const layerFetch: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerFetch> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerFetch); /** * @since 1.0.0 * @category Layers */ export const layerAgnostic: MakeDindLayerFromPlatformConstructor<typeof DockerEngine.layerAgnostic> = internal.makeDindLayerFromPlatformConstructor(DockerEngine.layerAgnostic);