import * as model from "./index";
/**
 * Yearly recurrence pattern.
 */
export declare class YearlyRecurrencePatternDto extends model.RecurrencePatternDto {
    /**
     * Attribute type map
     */
    static attributeTypeMap: Array<{
        name: string;
        baseName: string;
        type: string;
    }>;
    /**
     * Returns attribute type map
     */
    static getAttributeTypeMap(): {
        name: string;
        baseName: string;
        type: string;
    }[];
    /**
     * Represents the day of the week. Enum, available values: None, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday, Day, WeekDay, WeekendDay
     */
    startDay: string;
    /**
     * Represents a calendar month. Enum, available values: None, January, February, March, April, May, June, July, August, September, October, November, December
     */
    startMonth: string;
    /**
     * Start offset.
     */
    startOffset: number;
    /**
     * Day positions, typically found in a month. Enum, available values: None, First, Second, Third, Fourth, Last
     */
    startPosition: string;
    /**
     * Yearly recurrence pattern.
     * @param interval Number of recurrence units.
     * @param occurs Number of occurrences of the recurrence pattern.
     * @param endDate End date.
     * @param weekStart Represents the day of the week. Enum, available values: None, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday, Day, WeekDay, WeekendDay
     * @param startDay Represents the day of the week. Enum, available values: None, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday, Day, WeekDay, WeekendDay
     * @param startMonth Represents a calendar month. Enum, available values: None, January, February, March, April, May, June, July, August, September, October, November, December
     * @param startOffset Start offset.
     * @param startPosition Day positions, typically found in a month. Enum, available values: None, First, Second, Third, Fourth, Last
     */
    constructor(interval?: number, occurs?: number, endDate?: Date, weekStart?: string, startDay?: string, startMonth?: string, startOffset?: number, startPosition?: string);
}
/**
 *  YearlyRecurrencePatternDto model builder
 */
export declare class YearlyRecurrencePatternDtoBuilder {
    private readonly model;
    constructor(model: YearlyRecurrencePatternDto);
    /**
     * Build model.
     */
    build(): YearlyRecurrencePatternDto;
    /**
    * Number of recurrence units.
    */
    interval(interval: number): YearlyRecurrencePatternDtoBuilder;
    /**
    * Number of occurrences of the recurrence pattern.
    */
    occurs(occurs: number): YearlyRecurrencePatternDtoBuilder;
    /**
    * End date.
    */
    endDate(endDate: Date): YearlyRecurrencePatternDtoBuilder;
    /**
    * Represents the day of the week. Enum, available values: None, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday, Day, WeekDay, WeekendDay
    */
    weekStart(weekStart: string): YearlyRecurrencePatternDtoBuilder;
    /**
    * Represents the day of the week. Enum, available values: None, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday, Day, WeekDay, WeekendDay
    */
    startDay(startDay: string): YearlyRecurrencePatternDtoBuilder;
    /**
    * Represents a calendar month. Enum, available values: None, January, February, March, April, May, June, July, August, September, October, November, December
    */
    startMonth(startMonth: string): YearlyRecurrencePatternDtoBuilder;
    /**
    * Start offset.
    */
    startOffset(startOffset: number): YearlyRecurrencePatternDtoBuilder;
    /**
    * Day positions, typically found in a month. Enum, available values: None, First, Second, Third, Fourth, Last
    */
    startPosition(startPosition: string): YearlyRecurrencePatternDtoBuilder;
}
