"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.RAT_RULE = exports.TIGER_RULE = exports.TIME_RANGE = exports.CHINESE_TIME = exports.FiveElementsClass = exports.GENDER = exports.PALACES = exports.ZODIAC = exports.EARTHLY_BRANCHES = exports.HEAVENLY_STEMS = exports.LANGUAGES = void 0;
/** 支持的语言 */
exports.LANGUAGES = ['en-US', 'ja-JP', 'ko-KR', 'zh-CN', 'zh-TW', 'vi-VN'];
/** 十天干 */
exports.HEAVENLY_STEMS = [
    'jiaHeavenly',
    'yiHeavenly',
    'bingHeavenly',
    'dingHeavenly',
    'wuHeavenly',
    'jiHeavenly',
    'gengHeavenly',
    'xinHeavenly',
    'renHeavenly',
    'guiHeavenly',
];
/** 十二地支 */
exports.EARTHLY_BRANCHES = [
    'ziEarthly',
    'chouEarthly',
    'yinEarthly',
    'maoEarthly',
    'chenEarthly',
    'siEarthly',
    'wuEarthly',
    'weiEarthly',
    'shenEarthly',
    'youEarthly',
    'xuEarthly',
    'haiEarthly',
];
/** 十二生肖（按地支顺序） */
exports.ZODIAC = [
    'rat',
    'ox',
    'tiger',
    'rabbit',
    'dragon',
    'snake',
    'horse',
    'sheep',
    'monkey',
    'rooster',
    'dog',
    'pig',
];
/** 紫微斗数十二宫名称 */
exports.PALACES = [
    'soulPalace',
    'parentsPalace',
    'spiritPalace',
    'propertyPalace',
    'careerPalace',
    'friendsPalace',
    'surfacePalace',
    'healthPalace',
    'wealthPalace',
    'childrenPalace',
    'spousePalace',
    'siblingsPalace',
];
/** 性别对应阴阳，男为阳，女为阴 */
exports.GENDER = {
    male: '阳',
    female: '阴',
};
/**
 * 五行局，用于定紫微星和算起运年龄
 * 几局就从几岁（虚岁）开始起运
 * 比如 木三局 就从3岁开始起运
 *
 * @enum
 *  - 2 水二局
 *  - 3 木三局
 *  - 4 金四局
 *  - 5 土五局
 *  - 6 火六局
 */
var FiveElementsClass;
(function (FiveElementsClass) {
    FiveElementsClass[FiveElementsClass["water2nd"] = 2] = "water2nd";
    FiveElementsClass[FiveElementsClass["wood3rd"] = 3] = "wood3rd";
    FiveElementsClass[FiveElementsClass["metal4th"] = 4] = "metal4th";
    FiveElementsClass[FiveElementsClass["earth5th"] = 5] = "earth5th";
    FiveElementsClass[FiveElementsClass["fire6th"] = 6] = "fire6th";
})(FiveElementsClass || (exports.FiveElementsClass = FiveElementsClass = {}));
/**
 * 时辰, 子时分早晚。
 * 其中 00:00-01:00 为早子时，23:00-00:00 为晚子时
 */
exports.CHINESE_TIME = [
    'earlyRatHour',
    'oxHour',
    'tigerHour',
    'rabbitHour',
    'dragonHour',
    'snakeHour',
    'horseHour',
    'goatHour',
    'monkeyHour',
    'roosterHour',
    'dogHour',
    'pigHour',
    'lateRatHour', // : '23:00~00:00',
];
/** 时辰序号所对应的时间段，与 `CHINESE_TIME` 一一对应 */
exports.TIME_RANGE = [
    '00:00~01:00',
    '01:00~03:00',
    '03:00~05:00',
    '05:00~07:00',
    '07:00~09:00',
    '09:00~11:00',
    '11:00~13:00',
    '13:00~15:00',
    '15:00~17:00',
    '17:00~19:00',
    '19:00~21:00',
    '21:00~23:00',
    '23:00~00:00',
];
/**
 * 五虎遁 从年干算月干。
 *
 * “五虎遁元”年上起月法，简称 `五虎遁`。
 * 因为正月建寅，所以正月的地支为寅，寅属虎，所以叫五虎盾。
 *
 * - 甲己之年丙作首
 * - 乙庚之岁戊为头
 * - 丙辛必定寻庚起
 * - 丁壬壬位顺行流
 * - 若问戊癸何方发
 * - 甲寅之上好追求
 */
exports.TIGER_RULE = {
    jiaHeavenly: 'bingHeavenly',
    yiHeavenly: 'wuHeavenly',
    bingHeavenly: 'gengHeavenly',
    dingHeavenly: 'renHeavenly',
    wuHeavenly: 'jiaHeavenly',
    jiHeavenly: 'bingHeavenly',
    gengHeavenly: 'wuHeavenly',
    xinHeavenly: 'gengHeavenly',
    renHeavenly: 'renHeavenly',
    guiHeavenly: 'jiaHeavenly',
};
/**
 * 五鼠遁 以日干算时干。
 *
 * “五鼠遁元”日上起时法，简称 `五鼠遁`。
 * 因为日支全部以“子”时打头来排列的，子为鼠，所以叫五鼠遁。
 *
 * - 甲己还加甲，乙庚丙作初。
 * - 丙辛从戊起，丁壬庚子居。
 * - 戊癸起壬子，周而复始求。
 */
exports.RAT_RULE = {
    jiaHeavenly: 'jiaHeavenly',
    yiHeavenly: 'bingHeavenly',
    bingHeavenly: 'wuHeavenly',
    dingHeavenly: 'gengHeavenly',
    wuHeavenly: 'renHeavenly',
    jiHeavenly: 'jiaHeavenly',
    gengHeavenly: 'bingHeavenly',
    xinHeavenly: 'wuHeavenly',
    renHeavenly: 'gengHeavenly',
    guiHeavenly: 'renHeavenly',
};
