import { Kind } from "@k8ts/instruments";
import type { CDK } from "@k8ts/sample-interfaces";
import type { Pod_Volume } from "../volume";
import type { Pod_Device } from "../volume/devices";
export type Path_Rooted = `/${string}`;
export type Container_Mount_Path = `${"" | "." | ".."}${Path_Rooted}`;
export type Container_Mount = Container_Mount_Volume | Container_Mount_Device;
export interface Container_Mount_Props<SubPaths extends string = string> {
    readOnly?: boolean;
    subPath?: SubPaths;
    volume: Pod_Volume;
}
export declare class Container_Mount_Volume {
    readonly props: Container_Mount_Props;
    get kind(): Kind.SubKind<"VolumeMount", Kind.SubKind<"Container", Kind.Kind<"", "v1", "Pod">>>;
    constructor(props: Container_Mount_Props);
    get volume(): Pod_Volume<import("../volume").Pod_Volume_Backend>;
    protected __submanifest__(mountPath: string): CDK.VolumeMount;
}
export interface Container_Mount_Device_Props {
    device: Pod_Device;
}
export declare class Container_Mount_Device {
    readonly props: Container_Mount_Device_Props;
    get kind(): Kind.SubKind<"DeviceMount", Kind.SubKind<"Container", Kind.Kind<"", "v1", "Pod">>>;
    get volume(): Pod_Device;
    constructor(props: Container_Mount_Device_Props);
    protected __submanifest__(devicePath: string): CDK.VolumeDevice;
}
//# sourceMappingURL=mounts.d.ts.map