import { constant } from '.';
export declare const util: {
    /**
     * Converts the radian degree to the sexagesimal measure.
     * @param degree Radian degree you want to convert
     * @returns Sexagesimal measure (Degree, Minute, Second)
     */
    convertDegreeToDMS: (degree: number) => {
        degree: number;
        minute: number;
        second: number;
    };
    /**
     * Converts the radian degree to the position.
     * @param degree Radian degree you want to convert
     * @returns Constellation name, Position of longitude (absolute, relative)
     */
    convertDegreeToPosition: (degree: number) => {
        constellation: {
            name: string;
        };
        position: {
            longitude: {
                absolute: number;
                relative: number;
            };
        };
    };
    /**
     * Converts only the first letter to uppercase.
     * @param str The string you want to convert
     * @returns Captilized string
     */
    convertUpperCaseToCapitalize: (str: string) => string;
    /**
     * An object suitable for a given type is input and a corresponding object is generated.
     * @param o Objects for a given type T
     * @returns Implemented objects with a given type T
     */
    createEnumObject: <T extends string>(o: { [P in T]: P; }) => { [P in T]: P; };
    /**
     * A new object with a prefix is created by receiving an object suitable for a given type and a given type.
     * @param o Objects for a given type T
     * @param prefix Prefix to apply to the object's key, value
     * @returns Implemented objects with a given type T
     */
    prefixEnumObject: <T_1 extends string>(o: { [P_1 in T_1]: P_1; }, prefix: string) => {
        [x: string]: string;
    };
    /**
     * Gets the constellation index according to the order of Aries-Pieces constellation according to the given longitude.
     * @param longitude
     * @returns Constellation Index according to the order of Aries-Pieces constellation
     */
    getConstellationIndexFromLongitude: (degree: number) => number;
    /**
     * Gets the constellation index according to the order of Aries-Pieces constellation according to the given constellation 'name'.
     * @param name Constellation name
     * @returns Constellation Index according to the order of Aries-Pieces constellation
     */
    getConstellationIndexFromConstellationName: (name: keyof typeof constant.CONSTELLATION) => number;
    /**
     * Gets the position of the duodecatemorion according to the given degree.
     * @param degree The radian degree you want to calculate
     * @returns Duodecatemorion radian degree
     */
    getDuodecatemorion: (degree: number) => {
        constellation: {
            name: string;
        };
        position: {
            longitude: {
                absolute: number;
                relative: number;
            };
        };
    };
    /**
     * Gets house information according to the given information.
     * @param tjdUT Julian date based on UTC time zone
     * @param geoLon Radian longitude
     * @param geoLat Radian Latitude
     * @param hsys House system name
     * @returns House position information
     */
    getHouses: (tjdUT: number, geoLon: number, geoLat: number, hsys: keyof typeof constant.HOUSE_SYSTEM_SYMBOL) => {
        house: number[];
        ascendant: number;
        mc: number;
        armc: number;
        vertex: number;
        equatorialAscendant: number;
        kochCoAscendant: number;
        munkaseyCoAscendant: number;
        munkaseyPolarAscendant: number;
    };
    /**
     * Get node SWE version.
     * @returns version
     */
    getVersion: () => string;
    /**
     * Gets whether a particular point is located in the upper half of the chart or whether the chart is a day chart.
     * @param tjdUT Julian date based on UTC time zone
     * @param geoLon Radian longitude
     * @param geoLat Radian Latitude
     * @param posPoint Position of the point to be calculated. If not given, the standard is sun
     * @returns Whether it is located in the upper half of the chart
     */
    isDiurnal: (tjdUT: number, geoLon: number, geoLat: number, posPoint?: number) => boolean;
};
