import { Data_Interface } from "../../io/types";
import { MD_Frontmatter_Template } from "./helpers/MD_Frontmatter_Template";
import { MD_FileContent } from "./helpers/MD_FileContent";
import { MD_Document } from "./helpers/MD_Document";
import { MD_Observable_Abstract_TaskBase } from "./MD_Observable_Abstract_TaskBase";
import { Task_Interface } from "../types";
import { Markdown_IO_WriteProps_Interface } from "../../io";
export interface MD_Splitter_Parameter_Type {
    pattern: string;
    cleanName: string;
    limit: number;
    hasCounter: boolean;
    weightBase: number;
    url_prefix: string;
    doRemoveHeadline: boolean;
    frontmatter_filename: string;
    frontmatter: MD_Frontmatter_Template;
    writer_props: Markdown_IO_WriteProps_Interface;
}
export declare class MD_Splitter_Task<T extends string> extends MD_Observable_Abstract_TaskBase<T> implements Task_Interface<T> {
    parameter: MD_Splitter_Parameter_Type;
    md_document: MD_Document | null | undefined;
    counter: number;
    io_meta: any;
    constructor(parameter: MD_Splitter_Parameter_Type);
    perform(dao: Data_Interface<T>): Data_Interface<T>;
    protected transform(mdfc: MD_FileContent, index: number): MD_FileContent;
}
