import type { ObjectLiteral, Repository } from 'typeorm'; /** * 원시 결과에서 꺼낸 **컬럼 값** → 날짜. 읽을 수 없으면 `null`. * * 해석은 드라이버가 한다(`prepareHydratedValue`) — 엔티티로 받았을 때와 **같은 값**이 나온다. * 그래서 속도 때문에 원시로 받는 자리와 엔티티로 받는 자리가 서로 다른 답을 낼 수 없다. * * 원시로 받는 이유는 그대로 유효하다: 경계 한 줄을 찾을 때 색인만 읽으면 테이블을 열지 않는다. * 잃는 것은 컬럼 변환뿐이었고, 이 함수가 그것만 되돌려 준다. */ export declare function hydratedDate(repository: Repository, property: keyof T & string, value: unknown): Date | null; /** * **계약이 절대시각이라고 약속한** 값 → 날짜. 읽을 수 없으면 `null`. * * 쓰는 자리는 둘이다. 유입 봉투의 `eventTime`(정규 계약이 절대시각을 요구한다)과 우리가 만든 * 커서(우리가 적은 것을 우리가 읽는다). 둘 다 테이블의 컬럼이 아니므로 드라이버에게 물을 수 없다. * * 시간대가 적혀 있지 않으면 UTC 로 읽는다 — 계약이 절대시각을 요구하므로 지역 시간으로 읽을 근거가 * 없다. 「지금」으로 메우지 않는다: 옛 사건이 최근으로 보이고, 경계를 정하는 자리에서는 지우면 안 * 되는 것을 지운다. */ export declare function absoluteTime(value: unknown): Date | null;