import * as Schema from "effect/Schema";
import * as RuntimePluginSpec from "./RuntimePluginSpec.generated.ts";
import * as SwarmContainerSpec from "./SwarmContainerSpec.generated.ts";
import * as SwarmDriver from "./SwarmDriver.generated.ts";
import * as SwarmNetworkAttachmentConfig from "./SwarmNetworkAttachmentConfig.generated.ts";
import * as SwarmNetworkAttachmentSpec from "./SwarmNetworkAttachmentSpec.generated.ts";
import * as SwarmPlacement from "./SwarmPlacement.generated.ts";
import * as SwarmResourceRequirements from "./SwarmResourceRequirements.generated.ts";
import * as SwarmRestartPolicy from "./SwarmRestartPolicy.generated.ts";
declare const SwarmTaskSpec_base: Schema.Class<SwarmTaskSpec, Schema.Struct<{
    readonly ContainerSpec: Schema.optional<Schema.NullOr<typeof SwarmContainerSpec.SwarmContainerSpec>>;
    readonly PluginSpec: Schema.optional<Schema.NullOr<typeof RuntimePluginSpec.RuntimePluginSpec>>;
    readonly NetworkAttachmentSpec: Schema.optional<Schema.NullOr<typeof SwarmNetworkAttachmentSpec.SwarmNetworkAttachmentSpec>>;
    readonly Resources: Schema.optional<Schema.NullOr<typeof SwarmResourceRequirements.SwarmResourceRequirements>>;
    readonly RestartPolicy: Schema.optional<Schema.NullOr<typeof SwarmRestartPolicy.SwarmRestartPolicy>>;
    readonly Placement: Schema.optional<Schema.NullOr<typeof SwarmPlacement.SwarmPlacement>>;
    readonly Networks: Schema.optional<Schema.NullOr<Schema.$Array<Schema.NullOr<typeof SwarmNetworkAttachmentConfig.SwarmNetworkAttachmentConfig>>>>;
    readonly LogDriver: Schema.optional<Schema.NullOr<typeof SwarmDriver.SwarmDriver>>;
    readonly ForceUpdate: Schema.decodeTo<Schema.BigInt, Schema.String, never, never>;
    readonly Runtime: Schema.optional<Schema.Literals<readonly ["container", "plugin", "attachment"]>>;
}>, {}>;
export declare class SwarmTaskSpec extends SwarmTaskSpec_base {
}
export {};
//# sourceMappingURL=SwarmTaskSpec.generated.d.ts.map