/**
 * @file 卡片语法公共工具
 * @module transformer/extends/block/card/shared
 */
import type { MarkdownNode } from "../../../../transformer/core/MarkdownNode.js";
import type { BlockParseContext } from "../../../../transformer/core/context/BlockParseContext.js";
/** 三冒号块闭标记 */
export declare const TRIPLE_CLOSE_RE: RegExp;
/** 四冒号块闭标记 */
export declare const QUAD_CLOSE_RE: RegExp;
export declare function pickAttr(raw: string, name: string): string;
export declare function parseTitleInline(attrs: string, ctx: BlockParseContext): {
    title: string;
    titleNodes: MarkdownNode[];
};
export declare function stripLinkAttrs(attrs: string): string;
export declare function parseLinkCardOpen(attrs: string, ctx: BlockParseContext): {
    title: string;
    titleNodes: MarkdownNode[];
    link: string;
    icon: string;
};
export declare function parseRepoCardOpen(attrs: string): {
    repo: string;
    link: string;
    visibility: string;
};
export declare function blockLength(_lines: string[], start: number, end: number): number;
export interface ColonBlockResult {
    attrs: string;
    innerLines: string[];
    nextIndex: number;
}
export declare function readTripleColonBlock(lines: string[], start: number, openRe: RegExp): ColonBlockResult | null;
export declare function readQuadColonBlock(lines: string[], start: number, openRe: RegExp): ColonBlockResult | null;
export type { MarkdownNode };
//# sourceMappingURL=shared.d.ts.map