import type { CachePort } from "../cache/cache-port.js";
import type { CreateMasterInput, MasterFilter, MasterPage, MasterRecord, MasterRepository, UpdateMasterInput } from "./domain.js";
export declare class MasterDataService {
    private readonly repo;
    private readonly cache;
    constructor(repo: MasterRepository, cache: CachePort);
    list(domain: string, filter: MasterFilter): Promise<MasterPage>;
    getById(domain: string, id: string): Promise<MasterRecord | null>;
    create(domain: string, data: CreateMasterInput): Promise<MasterRecord>;
    update(domain: string, id: string, data: UpdateMasterInput): Promise<MasterRecord | null>;
    softDelete(domain: string, id: string): Promise<boolean>;
}
