import type { Nxtpression } from '../../common/nxtpression.ts';
export interface IngestScheduleDomainRecords {
    ":ingestschedule": IngestScheduleDomainRecord;
    ":ingestschedule.stats?": IngestScheduleDomainStatsRecord;
}
export interface IngestScheduleDomainRecord {
    io?: {
        [id: string]: IngestIo;
    };
    sourcesHint?: string;
    enabled?: boolean;
    clipname?: Nxtpression<string>;
    autoTags?: string[];
    storyboard?: string | null;
    pipeline?: string | null;
    type?: "instant" | "repeat" | "salami";
    salami?: {
        gallery?: string | null;
        tag?: string;
    };
    repeat?: IngestScheduleRepeat;
}
interface IngestIo {
    route?: string;
    /** List of connection IDs */
    publish?: string[];
}
/**
 * 0 = Monthly
 * 2 = Weekly
 * 3 = Daily
 */
type RepeatFreq = 0 | 2 | 3;
interface IngestScheduleRepeat {
    freq?: RepeatFreq;
    until?: string;
    start?: string;
    tzid?: string;
    duration?: number;
    byweekday?: number[];
}
export interface IngestScheduleDomainStatsRecord {
    error?: unknown;
}
export {};
