Files
upstream-zulip/web/third/marked/lib/marked.d.cts
upstream-mirror 64898b2c79
Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
snapshot of https://github.com/zulip/zulip.git @ 48c69911c7dd4e03b20552eb3bd77ad8151c1357 (2026-09-15)
2026-09-15 15:05:30 +05:00

109 lines
3.7 KiB
TypeScript

/*
This is an incomplete stub, which we include here because
we only use parts of the marked API and are using a fork
of the upstream library.
*/
import type {Matcher, RE2JS} from "./re2js.d.ts";
declare class Renderer {
code: (code: string) => string;
link: (href: string, title: string, text: string) => string;
br: () => string;
}
declare namespace marked {
type RegExpOrStub =
| RegExp
| {
exec(string: string): RegExpExecArray | null;
};
type ParseOptions = {
get_linkifier_regexes: () => RE2JS[];
linkifierHandler: (pattern: RE2JS, matcher: Matcher) => string;
emojiHandler: (emoji_name: string) => string;
unicodeEmojiHandler: (unicode_emoji: string) => string;
streamHandler: (stream_name: string) => string | undefined;
streamTopicHandler: (stream_name: string, topic: string) => string | undefined;
texHandler: (tex: string, fullmatch: string) => string;
timestampHandler: (time_string: string) => string;
gfm: boolean;
tables: boolean;
breaks: boolean;
pedantic: boolean;
sanitize: boolean;
smartLists: boolean;
smartypants: boolean;
zulip: boolean;
renderer: Renderer;
preprocessors: ((src: string) => string)[];
};
type MarkedOptions = ParseOptions & {
userMentionHandler: (mention: string, silently: boolean) => string | undefined;
groupMentionHandler: (name: string, silently: boolean) => string | undefined;
silencedMentionHandler: (quote: string) => string;
};
}
declare const marked: {
// Note: We don't use the `callback` option in any of our code.
(src: string, opt: marked.MarkedOptions, callback?: any): string;
Lexer: {
rules: {
tables: {
newline: marked.RegExpOrStub;
code: marked.RegExpOrStub;
fences: marked.RegExpOrStub;
hr: marked.RegExpOrStub;
heading: marked.RegExpOrStub;
nptable: marked.RegExpOrStub;
blockquote: marked.RegExpOrStub;
list: marked.RegExpOrStub;
html: marked.RegExpOrStub;
def: marked.RegExpOrStub;
table: marked.RegExpOrStub;
paragraph: marked.RegExpOrStub;
text: marked.RegExpOrStub;
bullet: marked.RegExpOrStub;
item: marked.RegExpOrStub;
_ta: marked.RegExpOrStub;
};
};
};
InlineLexer: {
rules: {
zulip: {
escape: marked.RegExpOrStub;
autolink: marked.RegExpOrStub;
url: marked.RegExpOrStub;
tag: marked.RegExpOrStub;
link: marked.RegExpOrStub;
reflink: marked.RegExpOrStub;
nolink: marked.RegExpOrStub;
strong: marked.RegExpOrStub;
em: marked.RegExpOrStub;
code: marked.RegExpOrStub;
br: marked.RegExpOrStub;
del: marked.RegExpOrStub;
emoji: marked.RegExpOrStub;
unicodeemoji: marked.RegExpOrStub;
usermention: marked.RegExpOrStub;
groupmention: marked.RegExpOrStub;
stream: marked.RegExpOrStub;
tex: marked.RegExpOrStub;
timestamp: marked.RegExpOrStub;
text: marked.RegExpOrStub;
_inside: marked.RegExpOrStub;
_href: marked.RegExpOrStub;
stream_topic: marked.RegExpOrStub;
};
};
};
Renderer: typeof Renderer;
stashHtml: (html: string, safe: boolean) => string;
};
export = marked;