mingpan 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/README.md +72 -44
  2. package/dist/core/qimen/FlyingRule.d.ts +60 -0
  3. package/dist/core/qimen/FlyingRule.d.ts.map +1 -0
  4. package/dist/core/qimen/FlyingRule.js +94 -0
  5. package/dist/core/qimen/FlyingRule.js.map +1 -0
  6. package/dist/core/qimen/GongMapping.d.ts +29 -0
  7. package/dist/core/qimen/GongMapping.d.ts.map +1 -0
  8. package/dist/core/qimen/GongMapping.js +83 -0
  9. package/dist/core/qimen/GongMapping.js.map +1 -0
  10. package/dist/core/qimen/RotatingRule.d.ts +76 -0
  11. package/dist/core/qimen/RotatingRule.d.ts.map +1 -0
  12. package/dist/core/qimen/RotatingRule.js +126 -0
  13. package/dist/core/qimen/RotatingRule.js.map +1 -0
  14. package/dist/core/qimen/YinYangDunCalculator.d.ts +28 -0
  15. package/dist/core/qimen/YinYangDunCalculator.d.ts.map +1 -0
  16. package/dist/core/qimen/YinYangDunCalculator.js +79 -0
  17. package/dist/core/qimen/YinYangDunCalculator.js.map +1 -0
  18. package/dist/core/qimen/index.d.ts +10 -0
  19. package/dist/core/qimen/index.d.ts.map +1 -0
  20. package/dist/core/qimen/index.js +58 -0
  21. package/dist/core/qimen/index.js.map +1 -0
  22. package/dist/core/qimen/types.d.ts +19 -0
  23. package/dist/core/qimen/types.d.ts.map +1 -0
  24. package/dist/core/qimen/types.js +7 -0
  25. package/dist/core/qimen/types.js.map +1 -0
  26. package/dist/index.js +269 -2
  27. package/dist/index.js.map +1 -1
  28. package/dist/output/qimenTextRenderer.d.ts +40 -0
  29. package/dist/output/qimenTextRenderer.d.ts.map +1 -0
  30. package/dist/output/qimenTextRenderer.js +363 -0
  31. package/dist/output/qimenTextRenderer.js.map +1 -0
  32. package/dist/services/qimen/QimenService.d.ts +93 -0
  33. package/dist/services/qimen/QimenService.d.ts.map +1 -0
  34. package/dist/services/qimen/QimenService.js +427 -0
  35. package/dist/services/qimen/QimenService.js.map +1 -0
  36. package/dist/services/qimen/calculators/BaMenCalculator.d.ts +53 -0
  37. package/dist/services/qimen/calculators/BaMenCalculator.d.ts.map +1 -0
  38. package/dist/services/qimen/calculators/BaMenCalculator.js +105 -0
  39. package/dist/services/qimen/calculators/BaMenCalculator.js.map +1 -0
  40. package/dist/services/qimen/calculators/BaShenCalculator.d.ts +34 -0
  41. package/dist/services/qimen/calculators/BaShenCalculator.d.ts.map +1 -0
  42. package/dist/services/qimen/calculators/BaShenCalculator.js +57 -0
  43. package/dist/services/qimen/calculators/BaShenCalculator.js.map +1 -0
  44. package/dist/services/qimen/calculators/GeJuCalculator.d.ts +141 -0
  45. package/dist/services/qimen/calculators/GeJuCalculator.d.ts.map +1 -0
  46. package/dist/services/qimen/calculators/GeJuCalculator.js +711 -0
  47. package/dist/services/qimen/calculators/GeJuCalculator.js.map +1 -0
  48. package/dist/services/qimen/calculators/JiuGongCalculator.d.ts +56 -0
  49. package/dist/services/qimen/calculators/JiuGongCalculator.d.ts.map +1 -0
  50. package/dist/services/qimen/calculators/JiuGongCalculator.js +98 -0
  51. package/dist/services/qimen/calculators/JiuGongCalculator.js.map +1 -0
  52. package/dist/services/qimen/calculators/JiuXingCalculator.d.ts +54 -0
  53. package/dist/services/qimen/calculators/JiuXingCalculator.d.ts.map +1 -0
  54. package/dist/services/qimen/calculators/JiuXingCalculator.js +117 -0
  55. package/dist/services/qimen/calculators/JiuXingCalculator.js.map +1 -0
  56. package/dist/services/qimen/calculators/JuShuCalculator.d.ts +57 -0
  57. package/dist/services/qimen/calculators/JuShuCalculator.d.ts.map +1 -0
  58. package/dist/services/qimen/calculators/JuShuCalculator.js +115 -0
  59. package/dist/services/qimen/calculators/JuShuCalculator.js.map +1 -0
  60. package/dist/services/qimen/calculators/PanTypeCalculator.d.ts +117 -0
  61. package/dist/services/qimen/calculators/PanTypeCalculator.d.ts.map +1 -0
  62. package/dist/services/qimen/calculators/PanTypeCalculator.js +237 -0
  63. package/dist/services/qimen/calculators/PanTypeCalculator.js.map +1 -0
  64. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.d.ts +50 -0
  65. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.d.ts.map +1 -0
  66. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.js +86 -0
  67. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.js.map +1 -0
  68. package/dist/services/qimen/calculators/ShenShaCalculator.d.ts +80 -0
  69. package/dist/services/qimen/calculators/ShenShaCalculator.d.ts.map +1 -0
  70. package/dist/services/qimen/calculators/ShenShaCalculator.js +300 -0
  71. package/dist/services/qimen/calculators/ShenShaCalculator.js.map +1 -0
  72. package/dist/services/qimen/calculators/YongShenCalculator.d.ts +78 -0
  73. package/dist/services/qimen/calculators/YongShenCalculator.d.ts.map +1 -0
  74. package/dist/services/qimen/calculators/YongShenCalculator.js +497 -0
  75. package/dist/services/qimen/calculators/YongShenCalculator.js.map +1 -0
  76. package/dist/services/qimen/calculators/ZeRiCalculator.d.ts +78 -0
  77. package/dist/services/qimen/calculators/ZeRiCalculator.d.ts.map +1 -0
  78. package/dist/services/qimen/calculators/ZeRiCalculator.js +431 -0
  79. package/dist/services/qimen/calculators/ZeRiCalculator.js.map +1 -0
  80. package/dist/services/qimen/calculators/ZhuanPanCalculator.d.ts +118 -0
  81. package/dist/services/qimen/calculators/ZhuanPanCalculator.d.ts.map +1 -0
  82. package/dist/services/qimen/calculators/ZhuanPanCalculator.js +260 -0
  83. package/dist/services/qimen/calculators/ZhuanPanCalculator.js.map +1 -0
  84. package/dist/services/qimen/data/constants.d.ts +105 -0
  85. package/dist/services/qimen/data/constants.d.ts.map +1 -0
  86. package/dist/services/qimen/data/constants.js +295 -0
  87. package/dist/services/qimen/data/constants.js.map +1 -0
  88. package/dist/services/qimen/data/shensha-rules.d.ts +177 -0
  89. package/dist/services/qimen/data/shensha-rules.d.ts.map +1 -0
  90. package/dist/services/qimen/data/shensha-rules.js +397 -0
  91. package/dist/services/qimen/data/shensha-rules.js.map +1 -0
  92. package/dist/services/qimen/data/yongshen-rules.d.ts +115 -0
  93. package/dist/services/qimen/data/yongshen-rules.d.ts.map +1 -0
  94. package/dist/services/qimen/data/yongshen-rules.js +365 -0
  95. package/dist/services/qimen/data/yongshen-rules.js.map +1 -0
  96. package/dist/services/qimen/index.d.ts +20 -0
  97. package/dist/services/qimen/index.d.ts.map +1 -0
  98. package/dist/services/qimen/index.js +43 -0
  99. package/dist/services/qimen/index.js.map +1 -0
  100. package/dist/services/qimen/types.d.ts +390 -0
  101. package/dist/services/qimen/types.d.ts.map +1 -0
  102. package/dist/services/qimen/types.js +20 -0
  103. package/dist/services/qimen/types.js.map +1 -0
  104. package/dist/services/qimen/utils/gongUtils.d.ts +80 -0
  105. package/dist/services/qimen/utils/gongUtils.d.ts.map +1 -0
  106. package/dist/services/qimen/utils/gongUtils.js +164 -0
  107. package/dist/services/qimen/utils/gongUtils.js.map +1 -0
  108. package/package.json +1 -1
@@ -0,0 +1,397 @@
1
+ "use strict";
2
+ /**
3
+ * 神煞规则配置
4
+ *
5
+ * 定义各类神煞的查表规则和计算方法
6
+ * 参考《协纪辨方书》、《神奇之门》等经典著作
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.LIU_CHONG = exports.SHENSHA_SCORE_WEIGHTS = exports.ALL_SHENSHA_DEFS = exports.DIZHI_TO_GONG = exports.DINGMA_DEF = exports.RIMA_DEF = exports.RIMA = exports.YANGREN_DEF = exports.YANGREN = exports.TAISUI_DEF = exports.TIANYI_SHEN_DEF = exports.TIANYI_YIZHI = exports.TAOHUA_DEF = exports.TAOHUA = exports.LUSHEN_DEF = exports.LUSHEN = exports.YUEDE_DEF = exports.TIANDE_DEF = exports.YUEDE = exports.TIANDE = exports.HUAGAI_DEF = exports.HUAGAI = exports.YIMA_DEF = exports.YIMA = exports.TIANYI_DEF = exports.TIANYI_GUIREN = void 0;
10
+ exports.checkSuiPo = checkSuiPo;
11
+ exports.checkYuePo = checkYuePo;
12
+ // ============= 天乙贵人 =============
13
+ /**
14
+ * 天乙贵人查表
15
+ *
16
+ * 由日干查天乙贵人落宫地支
17
+ * 规则:甲戊庚牛羊(丑未),乙己鼠猴乡(子申),
18
+ * 丙丁猪鸡位(亥酉),壬癸兔蛇藏(卯巳),
19
+ * 六辛逢马虎(午寅)
20
+ */
21
+ exports.TIANYI_GUIREN = {
22
+ 甲: ['丑', '未'],
23
+ 戊: ['丑', '未'],
24
+ 庚: ['丑', '未'],
25
+ 乙: ['子', '申'],
26
+ 己: ['子', '申'],
27
+ 丙: ['亥', '酉'],
28
+ 丁: ['亥', '酉'],
29
+ 壬: ['卯', '巳'],
30
+ 癸: ['卯', '巳'],
31
+ 辛: ['午', '寅'],
32
+ };
33
+ /**
34
+ * 天乙贵人神煞定义
35
+ */
36
+ exports.TIANYI_DEF = {
37
+ name: '天乙贵人',
38
+ type: '吉',
39
+ description: '最尊贵之神,主贵人相助、逢凶化吉',
40
+ };
41
+ // ============= 驿马 =============
42
+ /**
43
+ * 驿马查表
44
+ *
45
+ * 由日支三合局冲位查驿马
46
+ * 寅午戌见申,申子辰见寅,亥卯未见巳,巳酉丑见亥
47
+ */
48
+ exports.YIMA = {
49
+ 寅: '申',
50
+ 午: '申',
51
+ 戌: '申',
52
+ 申: '寅',
53
+ 子: '寅',
54
+ 辰: '寅',
55
+ 亥: '巳',
56
+ 卯: '巳',
57
+ 未: '巳',
58
+ 巳: '亥',
59
+ 酉: '亥',
60
+ 丑: '亥',
61
+ };
62
+ /**
63
+ * 驿马神煞定义
64
+ */
65
+ exports.YIMA_DEF = {
66
+ name: '驿马',
67
+ type: '中性',
68
+ description: '主迁动变化,出行奔波,求财谋事有动象',
69
+ };
70
+ // ============= 华盖 =============
71
+ /**
72
+ * 华盖查表
73
+ *
74
+ * 由年支或日支三合局墓库位查华盖
75
+ * 寅午戌见戌,申子辰见辰,亥卯未见未,巳酉丑见丑
76
+ */
77
+ exports.HUAGAI = {
78
+ 寅: '戌',
79
+ 午: '戌',
80
+ 戌: '戌',
81
+ 申: '辰',
82
+ 子: '辰',
83
+ 辰: '辰',
84
+ 亥: '未',
85
+ 卯: '未',
86
+ 未: '未',
87
+ 巳: '丑',
88
+ 酉: '丑',
89
+ 丑: '丑',
90
+ };
91
+ /**
92
+ * 华盖神煞定义
93
+ */
94
+ exports.HUAGAI_DEF = {
95
+ name: '华盖',
96
+ type: '中性',
97
+ description: '主聪明、艺术、孤高,利宗教修行、艺术创作',
98
+ };
99
+ /**
100
+ * 天德查表
101
+ *
102
+ * 由月支查天德
103
+ * 注:卯月见申(地支)、午月见亥(地支)、酉月见寅(地支)、子月见巳(地支)
104
+ */
105
+ exports.TIANDE = {
106
+ 寅: '丁',
107
+ 卯: '申', // 申为地支
108
+ 辰: '壬',
109
+ 巳: '辛',
110
+ 午: '亥', // 亥为地支
111
+ 未: '甲',
112
+ 申: '癸',
113
+ 酉: '寅', // 寅为地支
114
+ 戌: '丙',
115
+ 亥: '乙',
116
+ 子: '巳', // 巳为地支
117
+ 丑: '庚',
118
+ };
119
+ /**
120
+ * 月德查表
121
+ *
122
+ * 由月支查月德
123
+ */
124
+ exports.YUEDE = {
125
+ 寅: '丙',
126
+ 午: '丙',
127
+ 戌: '丙',
128
+ 申: '壬',
129
+ 子: '壬',
130
+ 辰: '壬',
131
+ 亥: '甲',
132
+ 卯: '甲',
133
+ 未: '甲',
134
+ 巳: '庚',
135
+ 酉: '庚',
136
+ 丑: '庚',
137
+ };
138
+ /**
139
+ * 天德神煞定义
140
+ */
141
+ exports.TIANDE_DEF = {
142
+ name: '天德',
143
+ type: '吉',
144
+ description: '化凶为吉,主有天助,逢难呈祥',
145
+ };
146
+ /**
147
+ * 月德神煞定义
148
+ */
149
+ exports.YUEDE_DEF = {
150
+ name: '月德',
151
+ type: '吉',
152
+ description: '化凶为吉,主有贵人暗助',
153
+ };
154
+ // ============= 禄神 =============
155
+ /**
156
+ * 禄神查表
157
+ *
158
+ * 由日干查禄神落宫地支
159
+ * 甲禄在寅,乙禄在卯,丙戊禄在巳,丁己禄在午,
160
+ * 庚禄在申,辛禄在酉,壬禄在亥,癸禄在子
161
+ */
162
+ exports.LUSHEN = {
163
+ 甲: '寅',
164
+ 乙: '卯',
165
+ 丙: '巳',
166
+ 丁: '午',
167
+ 戊: '巳',
168
+ 己: '午',
169
+ 庚: '申',
170
+ 辛: '酉',
171
+ 壬: '亥',
172
+ 癸: '子',
173
+ };
174
+ /**
175
+ * 禄神神煞定义
176
+ */
177
+ exports.LUSHEN_DEF = {
178
+ name: '禄神',
179
+ type: '吉',
180
+ description: '主财禄、俸禄,利求财求官',
181
+ };
182
+ // ============= 桃花(咸池) =============
183
+ /**
184
+ * 桃花(咸池)查表
185
+ *
186
+ * 由日支三合局首位之冲位查桃花
187
+ * 寅午戌见卯,申子辰见酉,亥卯未见子,巳酉丑见午
188
+ */
189
+ exports.TAOHUA = {
190
+ 寅: '卯',
191
+ 午: '卯',
192
+ 戌: '卯',
193
+ 申: '酉',
194
+ 子: '酉',
195
+ 辰: '酉',
196
+ 亥: '子',
197
+ 卯: '子',
198
+ 未: '子',
199
+ 巳: '午',
200
+ 酉: '午',
201
+ 丑: '午',
202
+ };
203
+ /**
204
+ * 桃花神煞定义
205
+ */
206
+ exports.TAOHUA_DEF = {
207
+ name: '桃花',
208
+ type: '中性',
209
+ description: '主姻缘、人缘、桃色,婚恋类事重点参考',
210
+ };
211
+ // ============= 天医 =============
212
+ /**
213
+ * 天医查表
214
+ *
215
+ * 由月支后一位查天医
216
+ * 正月见丑,二月见寅,...依次类推
217
+ */
218
+ exports.TIANYI_YIZHI = {
219
+ 寅: '丑', // 正月见丑
220
+ 卯: '寅', // 二月见寅
221
+ 辰: '卯',
222
+ 巳: '辰',
223
+ 午: '巳',
224
+ 未: '午',
225
+ 申: '未',
226
+ 酉: '申',
227
+ 戌: '酉',
228
+ 亥: '戌',
229
+ 子: '亥',
230
+ 丑: '子',
231
+ };
232
+ /**
233
+ * 天医神煞定义
234
+ */
235
+ exports.TIANYI_SHEN_DEF = {
236
+ name: '天医',
237
+ type: '吉',
238
+ description: '主医药、治疗,疾病类事重点参考',
239
+ };
240
+ // ============= 太岁 =============
241
+ /**
242
+ * 太岁神煞定义
243
+ */
244
+ exports.TAISUI_DEF = {
245
+ name: '太岁',
246
+ type: '中性',
247
+ description: '岁君所在,宜静不宜动,择日参考',
248
+ };
249
+ // ============= 羊刃 =============
250
+ /**
251
+ * 羊刃查表
252
+ *
253
+ * 由日干阳刃位查羊刃
254
+ * 甲刃在卯,乙刃在寅(或不取),丙戊刃在午,丁己刃在巳(或不取),
255
+ * 庚刃在酉,辛刃在申(或不取),壬刃在子,癸刃在亥(或不取)
256
+ *
257
+ * 注:阴干是否取羊刃有争议,这里采用阴干不取的主流做法
258
+ */
259
+ exports.YANGREN = {
260
+ 甲: '卯',
261
+ 乙: null, // 阴干不取
262
+ 丙: '午',
263
+ 丁: null,
264
+ 戊: '午',
265
+ 己: null,
266
+ 庚: '酉',
267
+ 辛: null,
268
+ 壬: '子',
269
+ 癸: null,
270
+ };
271
+ /**
272
+ * 羊刃神煞定义
273
+ */
274
+ exports.YANGREN_DEF = {
275
+ name: '羊刃',
276
+ type: '凶',
277
+ description: '主刚烈、冲动,凶煞之一,主意外伤灾',
278
+ };
279
+ // ============= 马星(整合) =============
280
+ /**
281
+ * 日马查表(同驿马)
282
+ */
283
+ exports.RIMA = exports.YIMA;
284
+ /**
285
+ * 日马神煞定义
286
+ */
287
+ exports.RIMA_DEF = {
288
+ name: '日马',
289
+ type: '中性',
290
+ description: '由日支定马星,主当日迁动奔波',
291
+ };
292
+ /**
293
+ * 丁马神煞定义
294
+ */
295
+ exports.DINGMA_DEF = {
296
+ name: '丁马',
297
+ type: '吉',
298
+ description: '丁奇落宫,主文书信息,利考试文章',
299
+ };
300
+ // ============= 地支到宫位映射 =============
301
+ /**
302
+ * 地支到宫位映射
303
+ */
304
+ exports.DIZHI_TO_GONG = {
305
+ 子: 1, // 坎宫
306
+ 丑: 8, // 艮宫
307
+ 寅: 8, // 艮宫(寅在东北偏东)
308
+ 卯: 3, // 震宫
309
+ 辰: 4, // 巽宫(辰在东南偏东)
310
+ 巳: 4, // 巽宫
311
+ 午: 9, // 离宫
312
+ 未: 2, // 坤宫(未在西南偏南)
313
+ 申: 2, // 坤宫
314
+ 酉: 7, // 兑宫
315
+ 戌: 6, // 乾宫(戌在西北偏西)
316
+ 亥: 6, // 乾宫
317
+ };
318
+ // ============= 神煞列表 =============
319
+ /**
320
+ * 所有神煞定义列表
321
+ */
322
+ exports.ALL_SHENSHA_DEFS = [
323
+ exports.TIANYI_DEF,
324
+ exports.YIMA_DEF,
325
+ exports.HUAGAI_DEF,
326
+ exports.TIANDE_DEF,
327
+ exports.YUEDE_DEF,
328
+ exports.LUSHEN_DEF,
329
+ exports.TAOHUA_DEF,
330
+ exports.TIANYI_SHEN_DEF,
331
+ exports.TAISUI_DEF,
332
+ exports.YANGREN_DEF,
333
+ exports.RIMA_DEF,
334
+ exports.DINGMA_DEF,
335
+ ];
336
+ // ============= 评分权重 =============
337
+ /**
338
+ * 神煞评分权重
339
+ */
340
+ exports.SHENSHA_SCORE_WEIGHTS = {
341
+ // 吉神
342
+ '天乙贵人': 15,
343
+ '禄神': 10,
344
+ '天德': 10,
345
+ '月德': 8,
346
+ '天医': 8,
347
+ '丁马': 5,
348
+ // 凶神
349
+ '羊刃': -10,
350
+ // 中性(视情况)
351
+ '驿马': 3,
352
+ '日马': 3,
353
+ '华盖': 0,
354
+ '桃花': 0, // 婚恋类为吉,其他为中性
355
+ '太岁': -5,
356
+ };
357
+ // ============= 岁破/月破规则 =============
358
+ /**
359
+ * 六冲对照表
360
+ *
361
+ * 用于计算岁破、月破
362
+ */
363
+ exports.LIU_CHONG = {
364
+ 子: '午',
365
+ 丑: '未',
366
+ 寅: '申',
367
+ 卯: '酉',
368
+ 辰: '戌',
369
+ 巳: '亥',
370
+ 午: '子',
371
+ 未: '丑',
372
+ 申: '寅',
373
+ 酉: '卯',
374
+ 戌: '辰',
375
+ 亥: '巳',
376
+ };
377
+ /**
378
+ * 检测岁破
379
+ *
380
+ * @param yearZhi 年支(太岁)
381
+ * @param dayZhi 日支
382
+ * @returns 是否为岁破日
383
+ */
384
+ function checkSuiPo(yearZhi, dayZhi) {
385
+ return exports.LIU_CHONG[yearZhi] === dayZhi;
386
+ }
387
+ /**
388
+ * 检测月破
389
+ *
390
+ * @param monthZhi 月支
391
+ * @param dayZhi 日支
392
+ * @returns 是否为月破日
393
+ */
394
+ function checkYuePo(monthZhi, dayZhi) {
395
+ return exports.LIU_CHONG[monthZhi] === dayZhi;
396
+ }
397
+ //# sourceMappingURL=shensha-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shensha-rules.js","sourceRoot":"","sources":["../../../../src/services/qimen/data/shensha-rules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * 用神规则配置
3
+ *
4
+ * 定义不同事类的用神选取规则
5
+ * 参考《神奇之门》、《奇门遁甲实践指南》等经典著作
6
+ */
7
+ import type { ShiLei, YongShenType, BaMen, BaShen, JiuXing, TianGan, WuXing } from '../types';
8
+ /** 用神规则项 */
9
+ export interface YongShenRule {
10
+ /** 用神类型 */
11
+ type: YongShenType;
12
+ /** 用神名称(标准名称) */
13
+ name: string;
14
+ /** 备注说明 */
15
+ note?: string;
16
+ }
17
+ /** 事类用神配置 */
18
+ export interface ShiLeiYongShenConfig {
19
+ /** 主用神列表(核心用神) */
20
+ zhuyong: YongShenRule[];
21
+ /** 辅用神列表(参考用神) */
22
+ fuyong: YongShenRule[];
23
+ /** 是否涉及双方(需要主客分析) */
24
+ needZhuKe: boolean;
25
+ /** 简要说明 */
26
+ description: string;
27
+ }
28
+ /**
29
+ * 事类用神规则表
30
+ *
31
+ * 每个事类定义:
32
+ * - zhuyong: 主用神,断卦核心
33
+ * - fuyong: 辅用神,参考分析
34
+ * - needZhuKe: 是否需要主客分析(涉及双方的事类)
35
+ */
36
+ export declare const YONGSHEN_RULES: Record<ShiLei, ShiLeiYongShenConfig>;
37
+ /**
38
+ * 五行旺相休囚死对照表
39
+ *
40
+ * 季节(月支)决定五行的旺衰状态
41
+ * - 旺:当令,力量最强
42
+ * - 相:得生,力量次强
43
+ * - 休:生当令者,力量平和
44
+ * - 囚:克当令者,力量衰弱
45
+ * - 死:被当令者克,力量最弱
46
+ */
47
+ export declare const WANGXIANG_TABLE: Record<string, Record<WuXing, '旺' | '相' | '休' | '囚' | '死'>>;
48
+ /**
49
+ * 五行入墓地支对照表
50
+ *
51
+ * 天干五行落入墓库地支,为入墓,主事物受困
52
+ */
53
+ export declare const RUMU_TABLE: Record<WuXing, string>;
54
+ /**
55
+ * 地支相刑对照表
56
+ *
57
+ * 天干落宫地支与日支/时支相刑,为击刑
58
+ */
59
+ export declare const XING_TABLE: Record<string, string[]>;
60
+ /**
61
+ * 五行相生关系
62
+ */
63
+ export declare const WUXING_SHENG: Record<WuXing, WuXing>;
64
+ /**
65
+ * 五行相克关系
66
+ */
67
+ export declare const WUXING_KE: Record<WuXing, WuXing>;
68
+ /**
69
+ * 天干五行对照表
70
+ */
71
+ export declare const GAN_WUXING: Record<TianGan, WuXing>;
72
+ /**
73
+ * 八门五行对照表
74
+ */
75
+ export declare const MEN_WUXING: Record<BaMen, WuXing>;
76
+ /**
77
+ * 九星五行对照表
78
+ */
79
+ export declare const XING_WUXING: Record<JiuXing, WuXing>;
80
+ /**
81
+ * 八神五行对照表
82
+ */
83
+ export declare const SHEN_WUXING: Record<BaShen, WuXing>;
84
+ /**
85
+ * 用神评分权重配置
86
+ */
87
+ export declare const YONGSHEN_SCORE_WEIGHTS: {
88
+ /** 旺相休囚死权重 */
89
+ wangXiang: {
90
+ 旺: number;
91
+ 相: number;
92
+ 休: number;
93
+ 囚: number;
94
+ 死: number;
95
+ };
96
+ /** 空亡减分 */
97
+ kongWang: number;
98
+ /** 入墓减分 */
99
+ ruMu: number;
100
+ /** 击刑减分 */
101
+ jiXing: number;
102
+ /** 吉格加分 */
103
+ jiGe: number;
104
+ /** 凶格减分 */
105
+ xiongGe: number;
106
+ /** 与日干关系权重 */
107
+ dayRelation: {
108
+ 生: number;
109
+ 克: number;
110
+ 比: number;
111
+ 泄: number;
112
+ 耗: number;
113
+ };
114
+ };
115
+ //# sourceMappingURL=yongshen-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yongshen-rules.d.ts","sourceRoot":"","sources":["../../../../src/services/qimen/data/yongshen-rules.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAI9F,YAAY;AACZ,MAAM,WAAW,YAAY;IAC3B,WAAW;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,aAAa;AACb,MAAM,WAAW,oBAAoB;IACnC,kBAAkB;IAClB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,kBAAkB;IAClB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,qBAAqB;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;CACrB;AAID;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAsL/D,CAAC;AAIF;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAsBvF,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM7C,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAe/C,CAAC;AAIF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAW9C,CAAC;AAIF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAS5C,CAAC;AAIF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAU/C,CAAC;AAIF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS9C,CAAC;AAIF;;GAEG;AACH,eAAO,MAAM,sBAAsB;IACjC,cAAc;;;;;;;;IASd,WAAW;;IAGX,WAAW;;IAGX,WAAW;;IAGX,WAAW;;IAGX,WAAW;;IAGX,cAAc;;;;;;;;CAQf,CAAC"}