/** * Interface representing an Ethiopian date with additional metadata * @interface EthiopianDateObject */ export interface EthiopianDateObject { /** The Ethiopian year (e.g., 2016) */ year: number; /** The Ethiopian month (1-13) */ month: number; /** The Ethiopian day (1-30) */ day: number; /** The name of the Ethiopian month in Amharic */ monthName: string; /** The day of the week in Amharic */ weekDay: string; } /** * Defines the format of the returned Ethiopian date * @typedef {('full' | 'date-only' | 'object')} ReturnFormat */ export type ReturnFormat = 'full' | 'date-only' | 'object'; /** * Converts a Gregorian date to Ethiopian date * @param {string} gregorianDate - The Gregorian date in 'YYYY-MM-DD' format * @param {ReturnFormat} [returnFormat='full'] - The desired format of the returned date * @returns {(string | EthiopianDateObject | null)} The converted Ethiopian date in the specified format * @example * // Returns full format (e.g., 'ሰኞ፣ ጥር 7 ቀን 2016 ዓ.ም.') * EthiopianDateConverter('2024-01-15') * * // Returns date only format (e.g., '2016-5-7') * EthiopianDateConverter('2024-01-15', 'date-only') * * // Returns object format * EthiopianDateConverter('2024-01-15', 'object') */ export declare const EthiopianDateConverter: (gregorianDate: string, returnFormat?: ReturnFormat) => string | EthiopianDateObject | null; export default EthiopianDateConverter;