import * as Context from "effect/Context";
import * as Effect from "effect/Effect";
import * as Layer from "effect/Layer";
import * as Schema from "effect/Schema";
import * as HttpClient from "effect/unstable/http/HttpClient";
import * as HttpApi from "effect/unstable/httpapi/HttpApi";
import * as HttpApiEndpoint from "effect/unstable/httpapi/HttpApiEndpoint";
import * as HttpApiGroup from "effect/unstable/httpapi/HttpApiGroup";
import { DockerError } from "./circular.ts";
/**
 * @since 1.0.0
 * @category HttpApi
 * @see https://docs.docker.com/reference/api/engine/latest/#tag/Session
 */
export declare const SessionApi: HttpApi.HttpApi<"SessionApi", HttpApiGroup.HttpApiGroup<"session", HttpApiEndpoint.HttpApiEndpoint<"session", "POST", "/session", never, never, never, Schema.toCodecStringTree<Schema.Struct<{
    Upgrade: Schema.Literal<"h2c">;
    Connection: Schema.Literal<"Upgrade">;
}>>, Schema.toCodecJson<Schema.Void>, never, never, never>, false>>;
declare const Sessions_base: Context.ServiceClass<Sessions, "@the-moby-effect/endpoints/Session", {
    session: () => Effect.Effect<import("effect/unstable/socket/Socket").Socket, DockerError, never>;
}> & {
    readonly make: Effect.Effect<{
        session: () => Effect.Effect<import("effect/unstable/socket/Socket").Socket, DockerError, never>;
    }, never, HttpClient.HttpClient>;
};
/**
 * @since 1.0.0
 * @category Services
 * @see https://docs.docker.com/reference/api/engine/latest/#tag/Session
 */
export declare class Sessions extends Sessions_base {
}
/**
 * @since 1.0.0
 * @category Layers
 * @see https://docs.docker.com/reference/api/engine/latest/#tag/Session
 */
export declare const SessionsLayer: Layer.Layer<Sessions, never, HttpClient.HttpClient>;
/**
 * @since 1.0.0
 * @category Layers
 * @see https://docs.docker.com/reference/api/engine/latest/#tag/Session
 */
export declare const SessionsLayerLocalSocket: Layer.Layer<Sessions, never, HttpClient.HttpClient>;
export {};
//# sourceMappingURL=session.d.ts.map