import type { RequestContext } from "../config/index.js";
export declare enum Action {
    CREATE = "create",
    UPDATE = "update",
    DELETE = "delete"
}
export interface ChangeLog {
    id: string;
    channelId: string;
    entityType: string;
    entityId: string;
    personType: string;
    personId: string;
    action: Action;
    diff: Record<string, unknown>;
    createdAt: string;
}
/**
 * 주어진 entityType과 entityId에 해당하는 변경 로그들을 Redash를 통해 조회합니다.
 * 생성 날짜(createdAt) 기준 내림차순으로 정렬되며, 페이지네이션을 지원합니다.
 * 쿼리 실패 시 에러를 발생시킵니다.
 * @param entityType 엔티티 유형
 * @param entityId 엔티티 ID
 * @param since 페이지 번호 (1부터 시작, 기본값 1)
 * @param context Optional RequestContext for HTTP transport.
 * @returns 로그 목록과 다음 페이지 번호
 */
export declare function getChangeLogsByEntity(entityType: string, entityId: string, since: number | undefined, // 기본 페이지 1
context: RequestContext): Promise<{
    changeLogs: Pick<ChangeLog, "createdAt" | "diff">[];
    nextSince?: number;
}>;
//# sourceMappingURL=change-log.repository.d.ts.map