import { z } from 'zod';
import { type InferProvider } from './capability-definition.js';
import { DeviceType } from '../device/device-type.js';
declare const SegmentSchema: z.ZodObject<{
    id: z.ZodString;
    startTs: z.ZodNumber;
    endTs: z.ZodNumber;
    durationSec: z.ZodNumber;
    sizeBytes: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export declare const recordingCapability: {
    readonly name: "recording";
    readonly scope: "device";
    readonly mode: "singleton";
    readonly deviceTypes: readonly [DeviceType.Camera];
    readonly methods: {
        readonly getSegments: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            deviceId: z.ZodNumber;
            from: z.ZodOptional<z.ZodNumber>;
            to: z.ZodOptional<z.ZodNumber>;
        }, z.core.$strip>, z.ZodArray<z.ZodObject<{
            id: z.ZodString;
            startTs: z.ZodNumber;
            endTs: z.ZodNumber;
            durationSec: z.ZodNumber;
            sizeBytes: z.ZodOptional<z.ZodNumber>;
        }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
        readonly getPlaybackUrl: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            deviceId: z.ZodNumber;
            segmentId: z.ZodString;
        }, z.core.$strip>, z.ZodNullable<z.ZodString>, import("./capability-definition.js").CapabilityMethodKind>;
        readonly getThumbnailAt: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            deviceId: z.ZodNumber;
            timestamp: z.ZodNumber;
        }, z.core.$strip>, z.ZodNullable<z.ZodObject<{
            base64: z.ZodString;
            contentType: z.ZodString;
        }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
    };
};
export type IRecordingProvider = InferProvider<typeof recordingCapability>;
export { SegmentSchema };
//# sourceMappingURL=recording.cap.d.ts.map