mirror of
				https://github.com/mermaid-js/mermaid.git
				synced 2025-11-04 04:44:08 +01:00 
			
		
		
		
	We are planning to release an icons library separately. Till we figure out the APIs for those, all external surface for icons are removed, to avoid making a breaking change when the new library comes.
		
			
				
	
	
		
			365 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			365 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
> **Warning**
 | 
						|
>
 | 
						|
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
 | 
						|
>
 | 
						|
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/setup/interfaces/mermaid.Mermaid.md](../../../../packages/mermaid/src/docs/config/setup/interfaces/mermaid.Mermaid.md).
 | 
						|
 | 
						|
# Interface: Mermaid
 | 
						|
 | 
						|
[mermaid](../modules/mermaid.md).Mermaid
 | 
						|
 | 
						|
## Properties
 | 
						|
 | 
						|
### contentLoaded
 | 
						|
 | 
						|
• **contentLoaded**: () => `void`
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (): `void`
 | 
						|
 | 
						|
\##contentLoaded Callback function that is called when page is loaded. This functions fetches
 | 
						|
configuration for mermaid rendering and calls init for rendering the mermaid diagrams on the
 | 
						|
page.
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`void`
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:435](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L435)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### detectType
 | 
						|
 | 
						|
• **detectType**: (`text`: `string`, `config?`: [`MermaidConfig`](mermaid.MermaidConfig.md)) => `string`
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`text`, `config?`): `string`
 | 
						|
 | 
						|
Detects the type of the graph text.
 | 
						|
 | 
						|
Takes into consideration the possible existence of an `%%init` directive
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name      | Type                                        | Description                                                                                                                                                         |
 | 
						|
| :-------- | :------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
 | 
						|
| `text`    | `string`                                    | The text defining the graph. For example: `mermaid %%{initialize: {"startOnLoad": true, logLevel: "fatal" }}%% graph LR a-->b b-->c c-->d d-->e e-->f f-->g g-->h ` |
 | 
						|
| `config?` | [`MermaidConfig`](mermaid.MermaidConfig.md) | The mermaid config.                                                                                                                                                 |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`string`
 | 
						|
 | 
						|
A graph definition key
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:437](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L437)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### init
 | 
						|
 | 
						|
• **init**: (`config?`: [`MermaidConfig`](mermaid.MermaidConfig.md), `nodes?`: `string` | `HTMLElement` | `NodeListOf`<`HTMLElement`>, `callback?`: (`id`: `string`) => `unknown`) => `Promise`<`void`>
 | 
						|
 | 
						|
**`Deprecated`**
 | 
						|
 | 
						|
Use [initialize](mermaid.Mermaid.md#initialize) and [run](mermaid.Mermaid.md#run) instead.
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`config?`, `nodes?`, `callback?`): `Promise`<`void`>
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name        | Type                                                     |
 | 
						|
| :---------- | :------------------------------------------------------- |
 | 
						|
| `config?`   | [`MermaidConfig`](mermaid.MermaidConfig.md)              |
 | 
						|
| `nodes?`    | `string` \| `HTMLElement` \| `NodeListOf`<`HTMLElement`> |
 | 
						|
| `callback?` | (`id`: `string`) => `unknown`                            |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`Promise`<`void`>
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:430](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L430)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### initialize
 | 
						|
 | 
						|
• **initialize**: (`config`: [`MermaidConfig`](mermaid.MermaidConfig.md)) => `void`
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`config`): `void`
 | 
						|
 | 
						|
Used to set configurations for mermaid.
 | 
						|
This function should be called before the run function.
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name     | Type                                        | Description                       |
 | 
						|
| :------- | :------------------------------------------ | :-------------------------------- |
 | 
						|
| `config` | [`MermaidConfig`](mermaid.MermaidConfig.md) | Configuration object for mermaid. |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`void`
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:434](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L434)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### mermaidAPI
 | 
						|
 | 
						|
• **mermaidAPI**: `Readonly`<{ `defaultConfig`: [`MermaidConfig`](mermaid.MermaidConfig.md) = configApi.defaultConfig; `getConfig`: () => [`MermaidConfig`](mermaid.MermaidConfig.md) = configApi.getConfig; `getDiagramFromText`: (`text`: `string`, `metadata`: `Pick`<`DiagramMetadata`, `"title"`>) => `Promise`<`Diagram`> ; `getSiteConfig`: () => [`MermaidConfig`](mermaid.MermaidConfig.md) = configApi.getSiteConfig; `globalReset`: () => `void` ; `initialize`: (`userOptions`: [`MermaidConfig`](mermaid.MermaidConfig.md)) => `void` ; `parse`: (`text`: `string`, `parseOptions`: [`ParseOptions`](mermaid.ParseOptions.md) & { `suppressErrors`: `true` }) => `Promise`<[`ParseResult`](mermaid.ParseResult.md) | `false`>(`text`: `string`, `parseOptions?`: [`ParseOptions`](mermaid.ParseOptions.md)) => `Promise`<[`ParseResult`](mermaid.ParseResult.md)> ; `render`: (`id`: `string`, `text`: `string`, `svgContainingElement?`: `Element`) => `Promise`<[`RenderResult`](mermaid.RenderResult.md)> ; `reset`: () => `void` ; `setConfig`: (`conf`: [`MermaidConfig`](mermaid.MermaidConfig.md)) => [`MermaidConfig`](mermaid.MermaidConfig.md) = configApi.setConfig; `updateSiteConfig`: (`conf`: [`MermaidConfig`](mermaid.MermaidConfig.md)) => [`MermaidConfig`](mermaid.MermaidConfig.md) = configApi.updateSiteConfig }>
 | 
						|
 | 
						|
**`Deprecated`**
 | 
						|
 | 
						|
Use [parse](mermaid.Mermaid.md#parse) and [render](mermaid.Mermaid.md#render) instead. Please [open a discussion](https://github.com/mermaid-js/mermaid/discussions) if your use case does not fit the new API.
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:424](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L424)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### parse
 | 
						|
 | 
						|
• **parse**: (`text`: `string`, `parseOptions`: [`ParseOptions`](mermaid.ParseOptions.md) & { `suppressErrors`: `true` }) => `Promise`<[`ParseResult`](mermaid.ParseResult.md) | `false`>(`text`: `string`, `parseOptions?`: [`ParseOptions`](mermaid.ParseOptions.md)) => `Promise`<[`ParseResult`](mermaid.ParseResult.md)>
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`text`, `parseOptions`): `Promise`<[`ParseResult`](mermaid.ParseResult.md) | `false`>
 | 
						|
 | 
						|
Parse the text and validate the syntax.
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name           | Type                                                                     | Description                     |
 | 
						|
| :------------- | :----------------------------------------------------------------------- | :------------------------------ |
 | 
						|
| `text`         | `string`                                                                 | The mermaid diagram definition. |
 | 
						|
| `parseOptions` | [`ParseOptions`](mermaid.ParseOptions.md) & { `suppressErrors`: `true` } | Options for parsing.            |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`Promise`<[`ParseResult`](mermaid.ParseResult.md) | `false`>
 | 
						|
 | 
						|
An object with the `diagramType` set to type of the diagram if valid. Otherwise `false` if parseOptions.suppressErrors is `true`.
 | 
						|
 | 
						|
**`See`**
 | 
						|
 | 
						|
[ParseOptions](mermaid.ParseOptions.md)
 | 
						|
 | 
						|
**`Throws`**
 | 
						|
 | 
						|
Error if the diagram is invalid and parseOptions.suppressErrors is false or not set.
 | 
						|
 | 
						|
▸ (`text`, `parseOptions?`): `Promise`<[`ParseResult`](mermaid.ParseResult.md)>
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name            | Type                                      |
 | 
						|
| :-------------- | :---------------------------------------- |
 | 
						|
| `text`          | `string`                                  |
 | 
						|
| `parseOptions?` | [`ParseOptions`](mermaid.ParseOptions.md) |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`Promise`<[`ParseResult`](mermaid.ParseResult.md)>
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:425](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L425)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### parseError
 | 
						|
 | 
						|
• `Optional` **parseError**: [`ParseErrorFunction`](../modules/mermaid.md#parseerrorfunction)
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:419](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L419)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### registerExternalDiagrams
 | 
						|
 | 
						|
• **registerExternalDiagrams**: (`diagrams`: [`ExternalDiagramDefinition`](mermaid.ExternalDiagramDefinition.md)\[], `opts`: { `lazyLoad?`: `boolean` = true }) => `Promise`<`void`>
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`diagrams`, `opts?`): `Promise`<`void`>
 | 
						|
 | 
						|
Used to register external diagram types.
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name             | Type                                                                   | Default value | Description                                                                 |
 | 
						|
| :--------------- | :--------------------------------------------------------------------- | :------------ | :-------------------------------------------------------------------------- |
 | 
						|
| `diagrams`       | [`ExternalDiagramDefinition`](mermaid.ExternalDiagramDefinition.md)\[] | `undefined`   | Array of [ExternalDiagramDefinition](mermaid.ExternalDiagramDefinition.md). |
 | 
						|
| `opts`           | `Object`                                                               | `{}`          | If opts.lazyLoad is false, the diagrams will be loaded immediately.         |
 | 
						|
| `opts.lazyLoad?` | `boolean`                                                              | `true`        | -                                                                           |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`Promise`<`void`>
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:433](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L433)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### registerLayoutLoaders
 | 
						|
 | 
						|
• **registerLayoutLoaders**: (`loaders`: [`LayoutLoaderDefinition`](mermaid.LayoutLoaderDefinition.md)\[]) => `void`
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`loaders`): `void`
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name      | Type                                                             |
 | 
						|
| :-------- | :--------------------------------------------------------------- |
 | 
						|
| `loaders` | [`LayoutLoaderDefinition`](mermaid.LayoutLoaderDefinition.md)\[] |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`void`
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:432](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L432)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### render
 | 
						|
 | 
						|
• **render**: (`id`: `string`, `text`: `string`, `svgContainingElement?`: `Element`) => `Promise`<[`RenderResult`](mermaid.RenderResult.md)>
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`id`, `text`, `svgContainingElement?`): `Promise`<[`RenderResult`](mermaid.RenderResult.md)>
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name                    | Type      |
 | 
						|
| :---------------------- | :-------- |
 | 
						|
| `id`                    | `string`  |
 | 
						|
| `text`                  | `string`  |
 | 
						|
| `svgContainingElement?` | `Element` |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`Promise`<[`RenderResult`](mermaid.RenderResult.md)>
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:426](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L426)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### run
 | 
						|
 | 
						|
• **run**: (`options`: [`RunOptions`](mermaid.RunOptions.md)) => `Promise`<`void`>
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`options?`): `Promise`<`void`>
 | 
						|
 | 
						|
## run
 | 
						|
 | 
						|
Function that goes through the document to find the chart definitions in there and render them.
 | 
						|
 | 
						|
The function tags the processed attributes with the attribute data-processed and ignores found
 | 
						|
elements with the attribute already set. This way the init function can be triggered several
 | 
						|
times.
 | 
						|
 | 
						|
```mermaid-example
 | 
						|
graph LR;
 | 
						|
 a(Find elements)-->b{Processed}
 | 
						|
 b-->|Yes|c(Leave element)
 | 
						|
 b-->|No |d(Transform)
 | 
						|
```
 | 
						|
 | 
						|
```mermaid
 | 
						|
graph LR;
 | 
						|
 a(Find elements)-->b{Processed}
 | 
						|
 b-->|Yes|c(Leave element)
 | 
						|
 b-->|No |d(Transform)
 | 
						|
```
 | 
						|
 | 
						|
Renders the mermaid diagrams
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name      | Type                                  | Description              |
 | 
						|
| :-------- | :------------------------------------ | :----------------------- |
 | 
						|
| `options` | [`RunOptions`](mermaid.RunOptions.md) | Optional runtime configs |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`Promise`<`void`>
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:431](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L431)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### setParseErrorHandler
 | 
						|
 | 
						|
• **setParseErrorHandler**: (`parseErrorHandler`: (`err`: `any`, `hash`: `any`) => `void`) => `void`
 | 
						|
 | 
						|
#### Type declaration
 | 
						|
 | 
						|
▸ (`parseErrorHandler`): `void`
 | 
						|
 | 
						|
## setParseErrorHandler Alternative to directly setting parseError using:
 | 
						|
 | 
						|
```js
 | 
						|
mermaid.parseError = function (err, hash) {
 | 
						|
  forExampleDisplayErrorInGui(err); // do something with the error
 | 
						|
};
 | 
						|
```
 | 
						|
 | 
						|
This is provided for environments where the mermaid object can't directly have a new member added
 | 
						|
to it (eg. dart interop wrapper). (Initially there is no parseError member of mermaid).
 | 
						|
 | 
						|
##### Parameters
 | 
						|
 | 
						|
| Name                | Type                                    | Description                |
 | 
						|
| :------------------ | :-------------------------------------- | :------------------------- |
 | 
						|
| `parseErrorHandler` | (`err`: `any`, `hash`: `any`) => `void` | New parseError() callback. |
 | 
						|
 | 
						|
##### Returns
 | 
						|
 | 
						|
`void`
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:436](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L436)
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
### startOnLoad
 | 
						|
 | 
						|
• **startOnLoad**: `boolean`
 | 
						|
 | 
						|
#### Defined in
 | 
						|
 | 
						|
[packages/mermaid/src/mermaid.ts:418](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaid.ts#L418)
 |