<!-- API Report Version: 2.3 -->

## API Report File for "@atlaskit/prosemirror-input-rules"

> Do not edit this file. This report is auto-generated using
> [API Extractor](https://api-extractor.com/).
> [Learn more about API reports](https://hello.atlassian.net/wiki/spaces/UR/pages/1825484529/Package+API+Reports)

### Table of contents

- [Main Entry Types](#main-entry-types)
- [Peer Dependencies](#peer-dependencies)

### Main Entry Types

<!--SECTION START: Main Entry Types-->

```ts
import { createRule } from '@atlaskit/editor-common/utils';
import type { EditorState } from '@atlaskit/editor-prosemirror/state';
import type { InputRuleHandler } from '@atlaskit/editor-common/types';
import type { InputRuleWrapper } from '@atlaskit/editor-common/types';
import type { OnHandlerApply } from '@atlaskit/editor-common/types';
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
import type { Transaction } from '@atlaskit/editor-prosemirror/state';

// @public (undocumented)
export function createInputRulePlugin(
	pluginName: string,
	rules: InputRuleWrapper[],
	options?: Options,
): SafePlugin;

// @public (undocumented)
export const createPlugin: (
	pluginName: string,
	rules: Array<InputRuleWrapper>,
	options?: Options_2,
) => SafePlugin;

export { createRule };

export { InputRuleHandler };

export { InputRuleWrapper };

// @public (undocumented)
export const leafNodeReplacementCharacter = '\uFFFC';

// @public (undocumented)
export const MAX_REGEX_MATCH = 500;

// @public (undocumented)
type OnBeforeRegexMatch = (tr: Transaction) => void;

export { OnHandlerApply };

// @public (undocumented)
export type OnInputEvent = (props: { state: EditorState; from: number; to: number }) => boolean;

// @public (undocumented)
type Options = {
	allowInsertTextOnDocument?: boolean;
	onInputEvent?: OnInputEvent;
	onBeforeRegexMatch?: OnBeforeRegexMatch;
};

// @public (undocumented)
type Options_2 = {
	isBlockNodeRule?: boolean;
	allowInsertTextOnDocument?: boolean;
};

// @public (undocumented)
export const TEXT_INPUT_RULE_TRANSACTION_KEY = 'input_rule_plugin_transaction';

// (No @packageDocumentation comment for this package)
```

<!--SECTION END: Main Entry Types-->

### Peer Dependencies

<!--SECTION START: Peer Dependencies-->

```json
{}
```

<!--SECTION END: Peer Dependencies-->
