import { CalendarType } from "../types/main";
import parser from "./parser";
import { format } from "./format";
import { isInValidRange, isMonthValid, isBsDateValid } from "./validator";
import { getTotalDaysInBsMonth } from "./bsDate";
declare const parseBsDate: typeof parser;
declare const formatBsDate: typeof format;
export { isInValidRange, isMonthValid, isBsDateValid };
export { formatBsDate, parseBsDate };
export { getTotalDaysInBsMonth };
type NameType = "monthName" | "dayName";
type Language = "np" | "rm" | "en";
type Length = "full" | "short" | "min";
export declare function getNames<T extends Length>(type: NameType, lang: Language, length?: T): string[];
export declare const getMonthNames: (lang: Language | undefined, length: Length) => string[];
export declare const getWeekNames: (lang: Language | undefined, length: Length) => string[] | null;
export declare function getValidYears(lang: Language, calendarType: CalendarType): number[] | string[];
export declare const getNepaliNumber: (n: number | string) => string;
export declare const ad2bs: (years: number, months: number, date: number) => {
    year: number;
    month: number;
    date: number;
    day: number;
};
export declare const bs2ad: (year: number, month: number, day: number) => {
    year: number;
    month: number;
    date: number;
    day: number;
};
export declare const getStartingDayOfBsMonth: (year: number, month: number) => number;
type DateDetail = {
    date: number;
    year: number;
    month: number;
    monthName: string;
};
type RangeDetail = {
    from: DateDetail;
    to: DateDetail;
};
export declare const getBsRangeForAdCalendar: (year: number, month: number) => RangeDetail;
export declare const getAdRangeForBsCalendar: (year: number, month: number) => RangeDetail;
type DateInfo = {
    month: number;
    year: number;
    totalDays: number;
};
export declare const getBsInfoOfoffsetDate: (year: number, month: number, offset?: {
    year?: number;
    month?: number;
}) => DateInfo;
