import * as Schema from "effect/Schema";
import * as SwarmGenericResource from "./SwarmGenericResource.generated.ts";
import * as SwarmNetworkAttachment from "./SwarmNetworkAttachment.generated.ts";
import * as SwarmTaskSpec from "./SwarmTaskSpec.generated.ts";
import * as SwarmTaskStatus from "./SwarmTaskStatus.generated.ts";
import * as SwarmVersion from "./SwarmVersion.generated.ts";
import * as SwarmVolumeAttachment from "./SwarmVolumeAttachment.generated.ts";
declare const SwarmTask_base: Schema.Class<SwarmTask, Schema.Struct<{
    readonly Name: Schema.optional<Schema.String>;
    readonly Labels: Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>;
    readonly Version: Schema.optional<Schema.NullOr<typeof SwarmVersion.SwarmVersion>>;
    readonly CreatedAt: Schema.optional<Schema.NullOr<Schema.DateFromString>>;
    readonly UpdatedAt: Schema.optional<Schema.NullOr<Schema.DateFromString>>;
    readonly ID: Schema.brand<Schema.String, "TaskId">;
    readonly Spec: Schema.optional<Schema.NullOr<typeof SwarmTaskSpec.SwarmTaskSpec>>;
    readonly ServiceID: Schema.optional<Schema.brand<Schema.String, "ServiceId">>;
    readonly Slot: Schema.optional<Schema.decodeTo<Schema.BigInt, Schema.String, never, never>>;
    readonly NodeID: Schema.optional<Schema.brand<Schema.String, "NodeId">>;
    readonly Status: Schema.optional<Schema.NullOr<typeof SwarmTaskStatus.SwarmTaskStatus>>;
    readonly DesiredState: Schema.optional<Schema.Literals<readonly ["new", "allocated", "pending", "assigned", "accepted", "preparing", "ready", "starting", "running", "complete", "shutdown", "failed", "rejected", "remove", "orphaned"]>>;
    readonly NetworksAttachments: Schema.optional<Schema.NullOr<Schema.$Array<Schema.NullOr<typeof SwarmNetworkAttachment.SwarmNetworkAttachment>>>>;
    readonly GenericResources: Schema.optional<Schema.NullOr<Schema.$Array<Schema.NullOr<typeof SwarmGenericResource.SwarmGenericResource>>>>;
    readonly JobIteration: Schema.optional<Schema.NullOr<typeof SwarmVersion.SwarmVersion>>;
    readonly Volumes: Schema.NullOr<Schema.$Array<Schema.NullOr<typeof SwarmVolumeAttachment.SwarmVolumeAttachment>>>;
}>, {}>;
export declare class SwarmTask extends SwarmTask_base {
}
export {};
//# sourceMappingURL=SwarmTask.generated.d.ts.map