import type { MarkdownItPluginCb, MarkdownItPluginOpts } from '@diplodoc/transform/lib/typings';
export interface IncludeChainEntry {
    file: string;
    line: number;
}
/**
 * Strips YAML frontmatter from include file content if present.
 * Include files written by md2md may have frontmatter (e.g. csp, metadata);
 * when used as include body they must not be rendered as content.
 */
export declare function contentWithoutFrontmatter(raw: string): string;
type Options = MarkdownItPluginOpts & {
    path: NormalizedPath;
    files: Record<NormalizedPath, string>;
};
/**
 * Merges resource arrays (script, style) collected during nested
 * include parsing back into the parent env.  This is necessary because
 * `{...env}` spread breaks the `meta` getter/setter proxy — extensions
 * that run inside nested `md.parse` create a new `meta` object on the
 * copy, and their additions are lost without explicit propagation.
 */
export declare function mergeNestedMeta(parentEnv: Record<string, unknown>, nestedMeta: Record<string, unknown> | undefined): void;
declare const _default: MarkdownItPluginCb<Options>;
export default _default;
