import { DateAdapter } from '../date-adapter'; import { Dates } from '../dates'; import { Rule } from '../rule'; import { DateInput } from '../utilities'; import { IOccurrenceGenerator } from './occurrence-generator'; export interface IScheduleLike extends IOccurrenceGenerator { readonly rrules: ReadonlyArray>; readonly exrules: ReadonlyArray>; readonly rdates: Dates; readonly exdates: Dates; add(prop: 'rrule' | 'exrule', value: Rule): IScheduleLike; add(prop: 'rdate' | 'exdate', value: DateInput): IScheduleLike; remove(prop: 'rrule' | 'exrule', value: Rule): IScheduleLike; remove(prop: 'rdate' | 'exdate', value: DateInput): IScheduleLike; set(prop: 'timezone', value: string | null): IScheduleLike; set(prop: 'rrules' | 'exrules', value: Rule[]): IScheduleLike; set(prop: 'rdates' | 'exdates', value: Dates): IScheduleLike; }