import { Cron, CronStanza, Resource_Top, type Resource_Entity } from "@k8ts/instruments";
import { Meta } from "@k8ts/metadata";
import { CDK } from "@k8ts/sample-interfaces";
import { Timezone } from "../../../../instruments/dist/expressions/timezone";
import { type Pod_Props } from "../pod";
export interface CronJob_Props<CronSpec extends Cron.Record> extends Omit<CDK.CronJobSpec, "jobTemplate" | "schedule" | "timeZone"> {
    $schedule: CronStanza<CronSpec>;
    $template: Pod_Props<never> & {
        restartPolicy: "Always" | "OnFailure" | "Never";
    };
    $meta?: Meta.Input;
    timeZone: Timezone;
}
export declare class CronJob<Name extends string = string, Cron extends Cron.Record = Cron.Record> extends Resource_Top<Name, CronJob_Props<Cron>> {
    get kind(): import("@k8ts/instruments").Kind.Kind<"batch", "v1", "CronJob">;
    private _template;
    protected __kids__(): Resource_Entity[];
    protected body(): CDK.KubeCronJobProps;
}
//# sourceMappingURL=index.d.ts.map