UNPKG

@aplus-frontend/ui

Version:

43 lines (42 loc) 1.19 kB
import { Ref } from 'vue'; export type TimeAgoResultType = { /** * 差值(绝对值ms) */ diffMs: number; /** * 差值类型(之前/之后) */ type: 'ago' | 'late'; /** * 差值应使用最近单位 */ unit: 's' | 'm' | 'h' | 'd' | 'M' | 'y'; /** * 差值数量(向下取整) */ count: number; }; type DateType = Date | number | string; export declare function getTimeAgo(ts: number, baseline: number): TimeAgoResultType; export interface TimeAgoRecord { ts: number; timeAgo: Ref<TimeAgoResultType>; interval: false | number; updated: number; } export declare function getId(): number; export declare function subscribe(id: number, record: TimeAgoRecord): void; export declare function unsubscribe(id: number): void; declare const useTimeGo: (target: Ref<DateType>, base: DateType, interval: Ref<false | number>) => Ref<{ diffMs: number; type: "ago" | "late"; unit: "s" | "m" | "h" | "d" | "M" | "y"; count: number; }, TimeAgoResultType | { diffMs: number; type: "ago" | "late"; unit: "s" | "m" | "h" | "d" | "M" | "y"; count: number; }>; export default useTimeGo;