import * as Schema from "effect/Schema";
declare const VolumePublishStatus_base: Schema.Class<VolumePublishStatus, {
    /** NodeID is the ID of the swarm node this Volume is published to. */
    NodeID: Schema.optional<typeof Schema.String>;
    /** State is the publish state of the volume. */
    State: Schema.optional<Schema.Literal<["pending-publish", "published", "pending-node-unpublish", "pending-controller-unpublish"]>>;
    /**
     * PublishContext is the PublishContext returned by the CSI plugin when
     * a volume is published.
     */
    PublishContext: Schema.optionalWith<Schema.Record$<typeof Schema.String, typeof Schema.String>, {
        nullable: true;
    }>;
}, Schema.Struct.Encoded<{
    /** NodeID is the ID of the swarm node this Volume is published to. */
    NodeID: Schema.optional<typeof Schema.String>;
    /** State is the publish state of the volume. */
    State: Schema.optional<Schema.Literal<["pending-publish", "published", "pending-node-unpublish", "pending-controller-unpublish"]>>;
    /**
     * PublishContext is the PublishContext returned by the CSI plugin when
     * a volume is published.
     */
    PublishContext: Schema.optionalWith<Schema.Record$<typeof Schema.String, typeof Schema.String>, {
        nullable: true;
    }>;
}>, never, {
    readonly NodeID?: string | undefined;
} & {
    readonly State?: "pending-publish" | "published" | "pending-node-unpublish" | "pending-controller-unpublish" | undefined;
} & {
    readonly PublishContext?: {
        readonly [x: string]: string;
    } | undefined;
}, {}, {}>;
export declare class VolumePublishStatus extends VolumePublishStatus_base {
}
export {};
//# sourceMappingURL=VolumePublishStatus.generated.d.ts.map