the-moby-effect
Version:
Moby/Docker API client built using effect-ts
38 lines (35 loc) • 2 kB
text/typescript
import * as Schema from "effect/Schema";
import * as MobyNumber from "../schemas/number.ts";
import * as ContainerBlkioStats from "./ContainerBlkioStats.generated.ts";
import * as ContainerCPUStats from "./ContainerCPUStats.generated.ts";
import * as ContainerMemoryStats from "./ContainerMemoryStats.generated.ts";
import * as ContainerNetworkStats from "./ContainerNetworkStats.generated.ts";
import * as ContainerPidsStats from "./ContainerPidsStats.generated.ts";
import * as ContainerStorageStats from "./ContainerStorageStats.generated.ts";
export class ContainerStatsResponse extends Schema.Class<ContainerStatsResponse>("ContainerStatsResponse")(
{
name: Schema.optional(Schema.String),
id: Schema.optional(Schema.String),
read: Schema.NullOr(Schema.DateFromString),
preread: Schema.NullOr(Schema.DateFromString),
pids_stats: Schema.optional(Schema.NullOr(ContainerPidsStats.ContainerPidsStats)),
blkio_stats: Schema.optional(Schema.NullOr(ContainerBlkioStats.ContainerBlkioStats)),
num_procs: MobyNumber.NumberFromWireString.check(
Schema.isInt(),
Schema.isBetween({ minimum: 0, maximum: 2 ** 32 - 1 })
),
storage_stats: Schema.optional(Schema.NullOr(ContainerStorageStats.ContainerStorageStats)),
cpu_stats: Schema.optional(Schema.NullOr(ContainerCPUStats.ContainerCPUStats)),
precpu_stats: Schema.optional(Schema.NullOr(ContainerCPUStats.ContainerCPUStats)),
memory_stats: Schema.optional(Schema.NullOr(ContainerMemoryStats.ContainerMemoryStats)),
networks: Schema.optional(
Schema.NullOr(Schema.Record(Schema.String, Schema.NullOr(ContainerNetworkStats.ContainerNetworkStats)))
),
},
{
identifier: "ContainerStatsResponse",
title: "container.StatsResponse",
documentation:
"https://pkg.go.dev/github.com/docker/docker@v28.4.0+incompatible/api/types/container#StatsResponse",
}
) {}