export declare const BAZI_REVERSE_DEFAULT_PAGE_SIZE = 24; export declare const BAZI_REVERSE_MAX_PAGE_SIZE = 100; /** 八字反推使用的四柱名称。每个字段都是六十甲子中的一个干支。 */ export interface BaziReversePillars { year: string; month: string; day: string; hour: string; } /** 反推查询的年份范围,按公历年闭区间解释。 */ export interface BaziReverseOptions { startYear?: number; endYear?: number; /** 候选起始序号;传入 limit 时启用分批返回。 */ startIndex?: number; /** 本批最多返回的候选数;省略时保留历史的完整返回行为。 */ limit?: number; } export interface BaziReverseRequest extends BaziReverseOptions { pillars: BaziReversePillars; } export interface BaziReverseDateTime { year: number; month: number; day: number; hour: number; minute: number; second: number; /** 北京时间墙上时间,格式为 YYYY-MM-DD HH:mm:ss。 */ text: string; } export type BaziReverseBoundaryReason = '查询范围开始' | '查询范围结束' | '节气交接' | '子时换日' | '时辰交接'; export interface BaziReverseBoundary { at: BaziReverseDateTime; reason: BaziReverseBoundaryReason; } /** * 一个四柱稳定成立的北京时间区间。 * * 起点包含,终点不包含;区间内任一秒按当前口径正向排盘都得到 targetPillars。 */ export interface BaziReverseCandidate { start: BaziReverseDateTime; end: BaziReverseDateTime; startTimestamp: number; endTimestamp: number; endExclusive: true; pillars: BaziReversePillars; startBoundary: BaziReverseBoundary; endBoundary: BaziReverseBoundary; } export interface BaziReverseBatchMetadata { startIndex: number; limit: number; returned: number; total: number; next?: { startIndex: number; limit: number; }; } export interface BaziReverseResult { pillars: BaziReversePillars; startYear: number; endYear: number; /** 按开始时间排序的所有候选区间。 */ candidates: BaziReverseCandidate[]; candidateCount: number; /** 仅在请求传入 limit 时提供;next 可原样作为下一批请求参数。 */ batch?: BaziReverseBatchMetadata; policy: { timezone: 'Asia/Shanghai'; offsetHours: 8; month: '节气月'; dayChange: '子时23点换日'; range: '[start, end)'; engine: 'tyme4ts'; }; } /** * 根据四柱反推指定公历年份范围内的全部北京时间候选区间。 * * 该函数沿用项目当前八字口径:北京时间(UTC+8)、以节气交接确定月柱、 * 23:00 起按次日干支处理子时。候选区间的起止均由 tyme4ts 正向复核后确定。 */ export declare function reverseBaziDates(input: BaziReverseRequest): BaziReverseResult; export declare const BAZI_REVERSE_DEFAULT_START_YEAR = 1900;