import { HttpApi, HttpApiEndpoint, HttpApiGroup, HttpClient } from "@effect/platform"; import { Effect, Schema, Stream, type Layer } from "effect"; import { JSONMessage, TypesPlugin as Plugin, RuntimePluginPrivilege as PluginPrivilege } from "../generated/index.js"; import { DockerError } from "./circular.ts"; import { InternalServerError, NotFound } from "./httpApiHacks.js"; declare const ListFilters_base: Schema.transform, Schema.Struct<{ capability: Schema.optional>; enabled: Schema.optional, typeof Schema.BooleanFromString, never>>; }>>; /** @since 1.0.0 */ export declare class ListFilters extends ListFilters_base { } /** * @since 1.0.0 * @category HttpApi * @see https://docs.docker.com/reference/api/engine/latest/#tag/Plugin */ export declare const PluginsApi: HttpApi.HttpApi<"PluginsApi", HttpApiGroup.HttpApiGroup<"plugins", HttpApiEndpoint.HttpApiEndpoint<"list", "GET", never, { readonly filters?: { readonly capability?: readonly string[] | undefined; readonly enabled?: boolean | undefined; } | undefined; }, never, never, readonly Plugin[], never, never, never> | HttpApiEndpoint.HttpApiEndpoint<"getPrivileges", "GET", never, { readonly remote: string; }, never, never, readonly PluginPrivilege[], never, never, never> | HttpApiEndpoint.HttpApiEndpoint<"pull", "POST", never, { readonly name?: string | undefined; readonly remote: string; }, readonly PluginPrivilege[], { readonly "X-Registry-Auth"?: string | undefined; }, void, never, never, never> | HttpApiEndpoint.HttpApiEndpoint<"inspect", "GET", { readonly name: string; }, never, never, never, Plugin, NotFound, never, never> | HttpApiEndpoint.HttpApiEndpoint<"delete", "DELETE", { readonly name: string; }, { readonly force?: boolean | undefined; }, never, never, void, NotFound, never, never> | HttpApiEndpoint.HttpApiEndpoint<"enable", "POST", { readonly name: string; }, { readonly timeout?: number | undefined; }, never, never, void, NotFound, never, never> | HttpApiEndpoint.HttpApiEndpoint<"disable", "POST", { readonly name: string; }, { readonly force?: boolean | undefined; }, never, never, void, NotFound, never, never> | HttpApiEndpoint.HttpApiEndpoint<"upgrade", "POST", { readonly name: string; }, { readonly remote: string; }, readonly PluginPrivilege[], { readonly "X-Registry-Auth"?: string | undefined; }, void, NotFound, never, never> | HttpApiEndpoint.HttpApiEndpoint<"create", "POST", never, { readonly name: string; }, never, never, void, never, never, never> | HttpApiEndpoint.HttpApiEndpoint<"push", "POST", { readonly name: string; }, never, never, never, void, NotFound, never, never> | HttpApiEndpoint.HttpApiEndpoint<"set", "POST", { readonly name: string; }, never, readonly string[], never, void, NotFound, never, never>, InternalServerError, never, false>, import("@effect/platform/HttpApiError").HttpApiDecodeError, never>; declare const Plugins_base: Effect.Service.Class]; readonly effect: Effect.Effect<{ list: (filters?: Schema.Schema.Type | undefined) => Effect.Effect; getPrivileges: (remote: string) => Effect.Effect; pull: (remote: string, options?: { name?: string | undefined; privileges?: Array[0]> | undefined; }) => Stream.Stream; inspect: (name: string) => Effect.Effect; delete: (name: string, options?: { readonly force?: boolean | undefined; }) => Effect.Effect; enable: (name: string, options?: { readonly timeout?: number | undefined; }) => Effect.Effect; disable: (name: string, options?: { readonly force?: boolean | undefined; }) => Effect.Effect; upgrade: (name: string, remote: string, privileges?: Array[0]> | undefined) => Effect.Effect; create: (name: string, tar: Stream.Stream) => Effect.Effect; push: (name: string) => Effect.Effect; set: (name: string, body: ReadonlyArray) => Effect.Effect; }, never, HttpClient.HttpClient>; }>; /** * @since 1.0.0 * @category Services * @see https://docs.docker.com/reference/api/engine/latest/#tag/Plugin */ export declare class Plugins extends Plugins_base { } /** * @since 1.0.0 * @category Layers * @see https://docs.docker.com/reference/api/engine/latest/#tag/Plugin */ export declare const PluginsLayerLocalSocket: Layer.Layer; /** * @since 1.0.0 * @category Layers * @see https://docs.docker.com/reference/api/engine/latest/#tag/Plugin */ export declare const PluginsLayer: Layer.Layer; export {};