import type { WalkEntry } from "../../../types/walk.ts";
import type { Promisable } from "../../../types/possible-promise.ts";
import type { BaseData } from "../../../types/config.ts";
interface ParserMessages {
    pending: string;
    generated: string;
    noItems: string;
}
interface ParserItemMessages {
    confict: string;
    col2?: string;
}
export declare function createHandlerParser<T extends BaseData<Partial<Record<keyof T["data"], unknown>>>>(options: {
    col1Name: string;
    col2Name?: string;
    uniqueKeys?: (keyof T["data"])[];
    messages: ParserMessages;
    itemMessages: ((file: WalkEntry) => ParserItemMessages) | ParserItemMessages;
    createData: (file: WalkEntry & {
        originalPath: string;
    }) => Promisable<T["data"]>;
    postMortem?: (items: T[]) => Promisable<T[]>;
}): (files: WalkEntry[]) => Promise<T[]>;
export {};
