import { Granularity } from './types.js'; export declare namespace DateX { type DateGranularity = Granularity | 'weekDay'; function get(d: Date, g: DateGranularity, local: boolean): number; function set(d: Date, g: 'year', local: boolean, year: number, month?: number, date?: number): number; function set(d: Date, g: 'month', local: boolean, month: number, date?: number): number; function set(d: Date, g: 'week', local: boolean, week: number): number; function set(d: Date, g: 'day', local: boolean, date: number): number; function set(d: Date, g: 'weekDay', local: boolean, weekDay: number): number; function set(d: Date, g: 'hour', local: boolean, hours: number, min?: number, sec?: number, ms?: number): number; function set(d: Date, g: 'minute', local: boolean, min: number, sec?: number, ms?: number): number; function set(d: Date, g: 'second', local: boolean, sec: number, ms?: number): number; function set(d: Date, g: 'millisecond', local: boolean, ms: number): number; } /** * Allows to set day of week, symmetric to Date.getDay() * @param d Date representation * @param dayOfWeek 0..6 Sunday..Saturday * @param future true - only forward or present, false - only backward or present, null - closest * @param local whether to use local time * @returns Date with the same time as d, but with the updated day of week */ export declare function setDayOfWeek(d: Date | number, dayOfWeek: number, future?: boolean | null, local?: boolean): Date;