@quilltap/plugin-types 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,22 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.5.0] - 2026-01-02
9
+
10
+ ### Added
11
+
12
+ - Added `RenderingPattern` interface for configurable message content styling:
13
+ - `pattern: string` - Regex pattern as a string (converted to RegExp at runtime)
14
+ - `className: string` - CSS class to apply to matched text
15
+ - `flags?: string` - Optional regex flags (e.g., 'm' for multiline)
16
+ - Added `DialogueDetection` interface for paragraph-level dialogue detection:
17
+ - `openingChars: string[]` - Opening quote characters to detect
18
+ - `closingChars: string[]` - Closing quote characters to detect
19
+ - `className: string` - CSS class to apply to dialogue paragraphs
20
+ - Added `renderingPatterns?: RenderingPattern[]` field to `RoleplayTemplateConfig`
21
+ - Added `dialogueDetection?: DialogueDetection` field to `RoleplayTemplateConfig`
22
+ - Exported `AnnotationButton`, `RenderingPattern`, `DialogueDetection` from `@quilltap/plugin-types/plugins`
23
+
8
24
  ## [1.4.0] - 2026-01-02
9
25
 
10
26
  ### Added
@@ -861,6 +861,60 @@ interface AnnotationButton {
861
861
  /** Closing delimiter (e.g., "]", "*", "}}") - empty string for line-end delimiters */
862
862
  suffix: string;
863
863
  }
864
+ /**
865
+ * A pattern for styling roleplay text in message content.
866
+ *
867
+ * Rendering patterns define how to match and style specific text patterns
868
+ * in AI responses (e.g., narration, OOC comments, internal monologue).
869
+ *
870
+ * @example
871
+ * ```typescript
872
+ * // Match *narration* with single asterisks
873
+ * { pattern: '(?<!\\*)\\*[^*]+\\*(?!\\*)', className: 'qt-chat-narration' }
874
+ *
875
+ * // Match ((OOC comments)) with double parentheses
876
+ * { pattern: '\\(\\([^)]+\\)\\)', className: 'qt-chat-ooc' }
877
+ *
878
+ * // Match // OOC at start of line (multiline mode)
879
+ * { pattern: '^// .+$', className: 'qt-chat-ooc', flags: 'm' }
880
+ * ```
881
+ */
882
+ interface RenderingPattern {
883
+ /** Regex pattern as a string (converted to RegExp at runtime) */
884
+ pattern: string;
885
+ /**
886
+ * CSS class to apply to matched text.
887
+ * Standard classes: qt-chat-dialogue, qt-chat-narration, qt-chat-ooc, qt-chat-inner-monologue
888
+ */
889
+ className: string;
890
+ /** Optional regex flags (e.g., 'm' for multiline). Default: none */
891
+ flags?: string;
892
+ }
893
+ /**
894
+ * Configuration for detecting dialogue at the paragraph level.
895
+ *
896
+ * When dialogue contains markdown formatting (like **bold**), the text gets split
897
+ * into multiple children and inline regex patterns can't match. Paragraph-level
898
+ * detection checks if the entire paragraph starts and ends with quote characters.
899
+ *
900
+ * @example
901
+ * ```typescript
902
+ * // Standard dialogue with straight and curly quotes
903
+ * {
904
+ * openingChars: ['"', '"'],
905
+ * closingChars: ['"', '"'],
906
+ * className: 'qt-chat-dialogue'
907
+ * }
908
+ * ```
909
+ */
910
+ interface DialogueDetection {
911
+ /** Opening quote characters to detect (e.g., ['"', '"']) */
912
+ openingChars: string[];
913
+ /** Closing quote characters to detect (e.g., ['"', '"']) */
914
+ closingChars: string[];
915
+ /** CSS class to apply to dialogue paragraphs */
916
+ className: string;
917
+ }
864
918
  /**
865
919
  * Configuration for a single roleplay template
866
920
  *
@@ -893,6 +947,36 @@ interface RoleplayTemplateConfig {
893
947
  * ```
894
948
  */
895
949
  annotationButtons?: AnnotationButton[];
950
+ /**
951
+ * Patterns for styling roleplay text in message content.
952
+ * These patterns are matched against text nodes and wrapped in styled spans.
953
+ *
954
+ * @example
955
+ * ```typescript
956
+ * renderingPatterns: [
957
+ * // Match *narration* with single asterisks
958
+ * { pattern: '(?<!\\*)\\*[^*]+\\*(?!\\*)', className: 'qt-chat-narration' },
959
+ * // Match ((OOC)) with double parentheses
960
+ * { pattern: '\\(\\([^)]+\\)\\)', className: 'qt-chat-ooc' },
961
+ * ]
962
+ * ```
963
+ */
964
+ renderingPatterns?: RenderingPattern[];
965
+ /**
966
+ * Optional dialogue detection for paragraph-level styling.
967
+ * When dialogue contains markdown formatting, inline patterns can't match.
968
+ * This detects paragraphs that start/end with quote characters.
969
+ *
970
+ * @example
971
+ * ```typescript
972
+ * dialogueDetection: {
973
+ * openingChars: ['"', '"'],
974
+ * closingChars: ['"', '"'],
975
+ * className: 'qt-chat-dialogue'
976
+ * }
977
+ * ```
978
+ */
979
+ dialogueDetection?: DialogueDetection;
896
980
  }
897
981
  /**
898
982
  * Metadata for a roleplay template plugin
@@ -998,4 +1082,4 @@ interface RoleplayTemplatePluginExport {
998
1082
  plugin: RoleplayTemplatePlugin;
999
1083
  }
1000
1084
 
1001
- export type { AttachmentSupport as A, CheapModelConfig as C, EmbeddingModelInfo as E, FontDefinition as F, ImageGenerationModelInfo as I, LLMProviderPlugin as L, ModelInfo as M, ProviderMetadata as P, RoleplayTemplateConfig as R, Spacing as S, ToolFormatType as T, ProviderConfigRequirements as a, ProviderCapabilities as b, ImageProviderConstraints as c, IconProps as d, ProviderPluginExport as e, MessageFormatSupport as f, PluginCapability as g, PluginCategory as h, PluginStatus as i, PluginAuthor as j, PluginCompatibility as k, ProviderConfig as l, PluginPermissions as m, PluginManifest as n, InstalledPluginInfo as o, ColorPalette as p, Typography as q, Effects as r, ThemeTokens as s, EmbeddedFont as t, ThemeMetadata as u, ThemePlugin as v, ThemePluginExport as w, RoleplayTemplateMetadata as x, RoleplayTemplatePlugin as y, RoleplayTemplatePluginExport as z };
1085
+ export type { AttachmentSupport as A, AnnotationButton as B, CheapModelConfig as C, RenderingPattern as D, EmbeddingModelInfo as E, FontDefinition as F, DialogueDetection as G, ImageGenerationModelInfo as I, LLMProviderPlugin as L, ModelInfo as M, ProviderMetadata as P, RoleplayTemplateConfig as R, Spacing as S, ToolFormatType as T, ProviderConfigRequirements as a, ProviderCapabilities as b, ImageProviderConstraints as c, IconProps as d, ProviderPluginExport as e, MessageFormatSupport as f, PluginCapability as g, PluginCategory as h, PluginStatus as i, PluginAuthor as j, PluginCompatibility as k, ProviderConfig as l, PluginPermissions as m, PluginManifest as n, InstalledPluginInfo as o, ColorPalette as p, Typography as q, Effects as r, ThemeTokens as s, EmbeddedFont as t, ThemeMetadata as u, ThemePlugin as v, ThemePluginExport as w, RoleplayTemplateMetadata as x, RoleplayTemplatePlugin as y, RoleplayTemplatePluginExport as z };
@@ -861,6 +861,60 @@ interface AnnotationButton {
861
861
  /** Closing delimiter (e.g., "]", "*", "}}") - empty string for line-end delimiters */
862
862
  suffix: string;
863
863
  }
864
+ /**
865
+ * A pattern for styling roleplay text in message content.
866
+ *
867
+ * Rendering patterns define how to match and style specific text patterns
868
+ * in AI responses (e.g., narration, OOC comments, internal monologue).
869
+ *
870
+ * @example
871
+ * ```typescript
872
+ * // Match *narration* with single asterisks
873
+ * { pattern: '(?<!\\*)\\*[^*]+\\*(?!\\*)', className: 'qt-chat-narration' }
874
+ *
875
+ * // Match ((OOC comments)) with double parentheses
876
+ * { pattern: '\\(\\([^)]+\\)\\)', className: 'qt-chat-ooc' }
877
+ *
878
+ * // Match // OOC at start of line (multiline mode)
879
+ * { pattern: '^// .+$', className: 'qt-chat-ooc', flags: 'm' }
880
+ * ```
881
+ */
882
+ interface RenderingPattern {
883
+ /** Regex pattern as a string (converted to RegExp at runtime) */
884
+ pattern: string;
885
+ /**
886
+ * CSS class to apply to matched text.
887
+ * Standard classes: qt-chat-dialogue, qt-chat-narration, qt-chat-ooc, qt-chat-inner-monologue
888
+ */
889
+ className: string;
890
+ /** Optional regex flags (e.g., 'm' for multiline). Default: none */
891
+ flags?: string;
892
+ }
893
+ /**
894
+ * Configuration for detecting dialogue at the paragraph level.
895
+ *
896
+ * When dialogue contains markdown formatting (like **bold**), the text gets split
897
+ * into multiple children and inline regex patterns can't match. Paragraph-level
898
+ * detection checks if the entire paragraph starts and ends with quote characters.
899
+ *
900
+ * @example
901
+ * ```typescript
902
+ * // Standard dialogue with straight and curly quotes
903
+ * {
904
+ * openingChars: ['"', '"'],
905
+ * closingChars: ['"', '"'],
906
+ * className: 'qt-chat-dialogue'
907
+ * }
908
+ * ```
909
+ */
910
+ interface DialogueDetection {
911
+ /** Opening quote characters to detect (e.g., ['"', '"']) */
912
+ openingChars: string[];
913
+ /** Closing quote characters to detect (e.g., ['"', '"']) */
914
+ closingChars: string[];
915
+ /** CSS class to apply to dialogue paragraphs */
916
+ className: string;
917
+ }
864
918
  /**
865
919
  * Configuration for a single roleplay template
866
920
  *
@@ -893,6 +947,36 @@ interface RoleplayTemplateConfig {
893
947
  * ```
894
948
  */
895
949
  annotationButtons?: AnnotationButton[];
950
+ /**
951
+ * Patterns for styling roleplay text in message content.
952
+ * These patterns are matched against text nodes and wrapped in styled spans.
953
+ *
954
+ * @example
955
+ * ```typescript
956
+ * renderingPatterns: [
957
+ * // Match *narration* with single asterisks
958
+ * { pattern: '(?<!\\*)\\*[^*]+\\*(?!\\*)', className: 'qt-chat-narration' },
959
+ * // Match ((OOC)) with double parentheses
960
+ * { pattern: '\\(\\([^)]+\\)\\)', className: 'qt-chat-ooc' },
961
+ * ]
962
+ * ```
963
+ */
964
+ renderingPatterns?: RenderingPattern[];
965
+ /**
966
+ * Optional dialogue detection for paragraph-level styling.
967
+ * When dialogue contains markdown formatting, inline patterns can't match.
968
+ * This detects paragraphs that start/end with quote characters.
969
+ *
970
+ * @example
971
+ * ```typescript
972
+ * dialogueDetection: {
973
+ * openingChars: ['"', '"'],
974
+ * closingChars: ['"', '"'],
975
+ * className: 'qt-chat-dialogue'
976
+ * }
977
+ * ```
978
+ */
979
+ dialogueDetection?: DialogueDetection;
896
980
  }
897
981
  /**
898
982
  * Metadata for a roleplay template plugin
@@ -998,4 +1082,4 @@ interface RoleplayTemplatePluginExport {
998
1082
  plugin: RoleplayTemplatePlugin;
999
1083
  }
1000
1084
 
1001
- export type { AttachmentSupport as A, CheapModelConfig as C, EmbeddingModelInfo as E, FontDefinition as F, ImageGenerationModelInfo as I, LLMProviderPlugin as L, ModelInfo as M, ProviderMetadata as P, RoleplayTemplateConfig as R, Spacing as S, ToolFormatType as T, ProviderConfigRequirements as a, ProviderCapabilities as b, ImageProviderConstraints as c, IconProps as d, ProviderPluginExport as e, MessageFormatSupport as f, PluginCapability as g, PluginCategory as h, PluginStatus as i, PluginAuthor as j, PluginCompatibility as k, ProviderConfig as l, PluginPermissions as m, PluginManifest as n, InstalledPluginInfo as o, ColorPalette as p, Typography as q, Effects as r, ThemeTokens as s, EmbeddedFont as t, ThemeMetadata as u, ThemePlugin as v, ThemePluginExport as w, RoleplayTemplateMetadata as x, RoleplayTemplatePlugin as y, RoleplayTemplatePluginExport as z };
1085
+ export type { AttachmentSupport as A, AnnotationButton as B, CheapModelConfig as C, RenderingPattern as D, EmbeddingModelInfo as E, FontDefinition as F, DialogueDetection as G, ImageGenerationModelInfo as I, LLMProviderPlugin as L, ModelInfo as M, ProviderMetadata as P, RoleplayTemplateConfig as R, Spacing as S, ToolFormatType as T, ProviderConfigRequirements as a, ProviderCapabilities as b, ImageProviderConstraints as c, IconProps as d, ProviderPluginExport as e, MessageFormatSupport as f, PluginCapability as g, PluginCategory as h, PluginStatus as i, PluginAuthor as j, PluginCompatibility as k, ProviderConfig as l, PluginPermissions as m, PluginManifest as n, InstalledPluginInfo as o, ColorPalette as p, Typography as q, Effects as r, ThemeTokens as s, EmbeddedFont as t, ThemeMetadata as u, ThemePlugin as v, ThemePluginExport as w, RoleplayTemplateMetadata as x, RoleplayTemplatePlugin as y, RoleplayTemplatePluginExport as z };
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { AnthropicToolDefinition, AttachmentResults, CacheUsage, FileAttachment, GeneratedImage, GoogleToolDefinition, ImageGenParams, ImageGenProvider, ImageGenResponse, JSONSchemaDefinition, LLMMessage, LLMParams, LLMProvider, LLMResponse, ModelMetadata, ModelWarning, ModelWarningLevel, OpenAIToolDefinition, ResponseFormat, StreamChunk, TokenUsage, ToolCall, ToolCallRequest, ToolFormatOptions, ToolResult, UniversalTool } from './llm/index.mjs';
2
- export { A as AttachmentSupport, C as CheapModelConfig, p as ColorPalette, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, f as MessageFormatSupport, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, T as ToolFormatType, q as Typography } from './index-BH5jVqB9.mjs';
2
+ export { A as AttachmentSupport, C as CheapModelConfig, p as ColorPalette, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, f as MessageFormatSupport, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, T as ToolFormatType, q as Typography } from './index-CRkRb81P.mjs';
3
3
  export { ApiKeyError, AttachmentError, ConfigurationError, LogContext, LogLevel, ModelNotFoundError, PluginError, PluginLogger, ProviderApiError, RateLimitError, ToolExecutionError, createConsoleLogger, createNoopLogger } from './common/index.mjs';
4
4
  import 'react';
5
5
 
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { AnthropicToolDefinition, AttachmentResults, CacheUsage, FileAttachment, GeneratedImage, GoogleToolDefinition, ImageGenParams, ImageGenProvider, ImageGenResponse, JSONSchemaDefinition, LLMMessage, LLMParams, LLMProvider, LLMResponse, ModelMetadata, ModelWarning, ModelWarningLevel, OpenAIToolDefinition, ResponseFormat, StreamChunk, TokenUsage, ToolCall, ToolCallRequest, ToolFormatOptions, ToolResult, UniversalTool } from './llm/index.js';
2
- export { A as AttachmentSupport, C as CheapModelConfig, p as ColorPalette, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, f as MessageFormatSupport, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, T as ToolFormatType, q as Typography } from './index-C0tKQeeQ.js';
2
+ export { A as AttachmentSupport, C as CheapModelConfig, p as ColorPalette, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, f as MessageFormatSupport, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, T as ToolFormatType, q as Typography } from './index-Cp1fIE0T.js';
3
3
  export { ApiKeyError, AttachmentError, ConfigurationError, LogContext, LogLevel, ModelNotFoundError, PluginError, PluginLogger, ProviderApiError, RateLimitError, ToolExecutionError, createConsoleLogger, createNoopLogger } from './common/index.js';
4
4
  import 'react';
5
5
 
@@ -1,3 +1,3 @@
1
- export { A as AttachmentSupport, p as ColorPalette, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, q as Typography } from '../index-BH5jVqB9.mjs';
1
+ export { B as AnnotationButton, A as AttachmentSupport, p as ColorPalette, G as DialogueDetection, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, D as RenderingPattern, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, q as Typography } from '../index-CRkRb81P.mjs';
2
2
  import 'react';
3
3
  import '../llm/index.mjs';
@@ -1,3 +1,3 @@
1
- export { A as AttachmentSupport, p as ColorPalette, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, q as Typography } from '../index-C0tKQeeQ.js';
1
+ export { B as AnnotationButton, A as AttachmentSupport, p as ColorPalette, G as DialogueDetection, r as Effects, t as EmbeddedFont, E as EmbeddingModelInfo, F as FontDefinition, d as IconProps, I as ImageGenerationModelInfo, c as ImageProviderConstraints, o as InstalledPluginInfo, L as LLMProviderPlugin, M as ModelInfo, j as PluginAuthor, g as PluginCapability, h as PluginCategory, k as PluginCompatibility, n as PluginManifest, m as PluginPermissions, i as PluginStatus, b as ProviderCapabilities, l as ProviderConfig, a as ProviderConfigRequirements, P as ProviderMetadata, e as ProviderPluginExport, D as RenderingPattern, R as RoleplayTemplateConfig, x as RoleplayTemplateMetadata, y as RoleplayTemplatePlugin, z as RoleplayTemplatePluginExport, S as Spacing, u as ThemeMetadata, v as ThemePlugin, w as ThemePluginExport, s as ThemeTokens, q as Typography } from '../index-Cp1fIE0T.js';
2
2
  import 'react';
3
3
  import '../llm/index.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quilltap/plugin-types",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "description": "Type definitions for Quilltap plugin development",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",