import { DateTime } from '../../date-time';
import { RuleOption } from '../rule-options';
import { IPipeRule, IPipeRunFn, PipeRule } from './interfaces';
export interface IByDayOfMonthRuleOptions {
    byDayOfMonth: RuleOption.ByDayOfMonth[];
    byDayOfWeek?: RuleOption.ByDayOfWeek[];
}
export declare class ByDayOfMonthPipe extends PipeRule<IByDayOfMonthRuleOptions> implements IPipeRule<IByDayOfMonthRuleOptions> {
    run(args: IPipeRunFn): DateTime | null;
}
/**
 * Does a few things:
 *
 * 1. filters out byDayOfMonth entries which are not applicable
 *    to current month
 * 2. negative entries to positive ones
 * 3. if a byDayOfWeek option is given, removes days which are
 *    not on the correct day of the week
 */
export declare function normalizeByDayOfMonth(date: DateTime, byDayOfMonth: RuleOption.ByDayOfMonth[], byDayOfWeek?: RuleOption.ByDayOfWeek[]): number[];
//# sourceMappingURL=05-by-day-of-month.pipe.d.ts.map