UNPKG

slack-markdown

Version:
41 lines (38 loc) 1.65 kB
export const toHTML: ( /** Raw markdown to parse */ markdown: string, /** Configuration object */ options?: SlackMarkdownOptions ) => string; export interface SlackMarkdownOptions { /** if HTML should be escaped or not (default: true) */ escapeHTML?: boolean, /** if only slack-specific markdown should be parsed (default: false) */ slackOnly?: boolean, /** Object of the custom slack callbacks */ slackCallbacks?: SlackCallbackOptions, /** name mapping of CSS classes to custom ones */ cssModuleNames?: { [name: string]: string }, /** Disable the addition of extra span tags on slack-specific parsing (default: false) */ noExtraSpanTags?: boolean, /** Disable the addition of extra span tags around emojis (default: false) */ noExtraEmojiSpanTags?: boolean /** Set the target for `<a>` tags */ hrefTarget?: string, } export interface SlackCallbackOptions { /** User mentions "<@ID|name>" */ user?: (data: { id: string, name: string }) => string, /** Channel mentions "<#ID|name>" */ channel?: (data: { id: string, name: string }) => string, /** User group mentions "<!subteam^ID|name>" */ usergroup?: (data: { id: string, name: string }) => string, /** At here mentions "<!here|name>" */ atHere?: (data: { name: string }) => string, /** At channel mentions "<!channel|name>" */ atChannel?: (data: { name: string }) => string, /** At everyone mentions "<!everyone|name>" */ atEveryone?: (data: { name: string }) => string, /** Date mentions "<!date^timestamp^format^link|fallback>" */ date?: (data: { timestamp: string, format: string, link?: string, fallback: string }) => string }