import type { MeihuaCalculation, MeihuaDirection, MeihuaObjectType, MeihuaSettings } from '../../../../types/divination'; import { getDivinationTime } from '../../../../calendar/timeManager'; import type { RandomOptions, RandomTrace } from '../../../../shared/random'; export interface MeihuaMethodResult { upperTrigramIndex: number; lowerTrigramIndex: number; movingYaoIndex: number; calculation: MeihuaCalculation; randomTrace?: RandomTrace; } type DivinationTime = ReturnType; type DivinationGanzhi = DivinationTime['ganzhi']; type DivinationLunar = DivinationTime['timeInfo']['lunar']; export declare function resolveTimeMethod(ganzhi: DivinationGanzhi, lunar: DivinationLunar): MeihuaMethodResult; export declare function resolveTimeTrigramMethod(ganzhi: DivinationGanzhi, lunar: DivinationLunar): MeihuaMethodResult; export declare function resolveNumberMethod(number: number, timeBranch: string): MeihuaMethodResult; export declare function resolveSoundMethod(soundCount: number, timeBranch: string): MeihuaMethodResult; /** 旧盘重建证据时,从原始分笔、逐字笔画或声类重算,避免把缓存卦数当成取数来源。 */ export declare function hasCompleteCharacterCalculation(calculation: MeihuaCalculation): boolean; export declare function resolveCharacterMethod(settings: MeihuaSettings): MeihuaMethodResult; export declare function resolveDirectionMethod(direction: MeihuaDirection, objectType: MeihuaObjectType, timeBranch: string): MeihuaMethodResult; export declare function resolveRandomMethod(options?: RandomOptions): MeihuaMethodResult; export {};