@umbraco-cms/backoffice
    Preparing search index...

    Interface InlineMarkdownSpecOptions

    interface InlineMarkdownSpecOptions {
        allowedAttributes?: AllowedAttribute[];
        defaultAttributes?: Record<string, any>;
        getContent?: (node: any) => string;
        name?: string;
        nodeName: string;
        parseAttributes?: (attrString: string) => Record<string, any>;
        selfClosing?: boolean;
        serializeAttributes?: (attrs: Record<string, any>) => string;
    }
    Index

    Properties

    allowedAttributes?: AllowedAttribute[]

    Allowlist of attributes to include in markdown serialization. If not provided, all attributes are included.

    Each item can be either:

    • A string: the attribute name (always included if present)
    • An object: { name: string, skipIfDefault?: any } for conditional inclusion
    // Simple string attributes (backward compatible)
    allowedAttributes: ['id', 'label']

    // Mixed with conditional attributes
    allowedAttributes: [
    'id',
    'label',
    { name: 'mentionSuggestionChar', skipIfDefault: '@' }
    ]
    defaultAttributes?: Record<string, any>

    Default attributes to apply when parsing

    getContent?: (node: any) => string

    Function to extract content from the node for serialization

    name?: string

    The shortcode name (defaults to nodeName if not provided)

    nodeName: string

    The Tiptap node name this spec is for

    parseAttributes?: (attrString: string) => Record<string, any>

    Function to parse attributes from the attribute string

    selfClosing?: boolean

    Whether this is a self-closing shortcode (no content, like [emoji name=party])

    serializeAttributes?: (attrs: Record<string, any>) => string

    Function to serialize attributes to string