artifactuse 0.1.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.
Files changed (44) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +771 -0
  3. package/dist/core/bridge.d.ts +37 -0
  4. package/dist/core/detector.d.ts +134 -0
  5. package/dist/core/highlight.d.ts +53 -0
  6. package/dist/core/index.d.ts +124 -0
  7. package/dist/core/processors/audio.d.ts +36 -0
  8. package/dist/core/processors/audioPlayer.d.ts +39 -0
  9. package/dist/core/processors/codeEmbed.d.ts +58 -0
  10. package/dist/core/processors/dataViz.d.ts +28 -0
  11. package/dist/core/processors/design.d.ts +50 -0
  12. package/dist/core/processors/document.d.ts +38 -0
  13. package/dist/core/processors/image.d.ts +23 -0
  14. package/dist/core/processors/index.d.ts +62 -0
  15. package/dist/core/processors/interactive.d.ts +57 -0
  16. package/dist/core/processors/map.d.ts +29 -0
  17. package/dist/core/processors/math.d.ts +75 -0
  18. package/dist/core/processors/mermaid.d.ts +72 -0
  19. package/dist/core/processors/social.d.ts +63 -0
  20. package/dist/core/processors/table.d.ts +43 -0
  21. package/dist/core/processors/video.d.ts +69 -0
  22. package/dist/core/state.d.ts +37 -0
  23. package/dist/core/theme.d.ts +109 -0
  24. package/dist/index-_nD5FZzs.js +4300 -0
  25. package/dist/index.d.ts +1 -0
  26. package/dist/index.js +115 -0
  27. package/dist/jszip.min-CdmYyw5L.js +2324 -0
  28. package/dist/react/ArtifactuseAgentMessage.d.ts +31 -0
  29. package/dist/react/ArtifactuseCard.d.ts +13 -0
  30. package/dist/react/ArtifactuseInlineForm.d.ts +16 -0
  31. package/dist/react/ArtifactusePanel.d.ts +12 -0
  32. package/dist/react/ArtifactusePanelToggle.d.ts +8 -0
  33. package/dist/react/ArtifactuseSocialPreview.d.ts +6 -0
  34. package/dist/react/ArtifactuseViewer.d.ts +14 -0
  35. package/dist/react/index.d.ts +108 -0
  36. package/dist/react/index.js +1387 -0
  37. package/dist/svelte/index.d.ts +439 -0
  38. package/dist/svelte/index.js +2556 -0
  39. package/dist/vue/index.d.ts +296 -0
  40. package/dist/vue/index.js +2745 -0
  41. package/dist/vue2/composables.d.ts +291 -0
  42. package/dist/vue2/index.d.ts +10 -0
  43. package/dist/vue2/index.js +27979 -0
  44. package/package.json +127 -0
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Create bridge for panel iframe communication
3
+ */
4
+ export function createBridge(cdnUrl: any): {
5
+ setIframe: (iframe: any) => void;
6
+ send: (action: any, data: any, requestId?: any) => any;
7
+ request: (action: any, data: any, timeout?: number) => Promise<any>;
8
+ on: (action: any, callback: any) => () => void;
9
+ off: (action: any, callback: any) => void;
10
+ loadArtifact: (artifact: any) => any;
11
+ updateArtifact: (artifactId: any, updates: any) => any;
12
+ requestSave: () => Promise<any>;
13
+ requestExport: (format?: string) => Promise<any>;
14
+ sendAIResponse: (response: any, requestId: any) => any;
15
+ destroy: () => void;
16
+ readonly isReady: boolean;
17
+ readonly iframe: any;
18
+ };
19
+ /**
20
+ * Create bridge receiver (for use inside panel iframes)
21
+ */
22
+ export function createBridgeReceiver(allowedOrigins?: any[]): {
23
+ on: (action: any, callback: any) => () => void;
24
+ off: (action: any, callback: any) => void;
25
+ send: (action: any, data: any) => void;
26
+ respond: (action: any, data: any, requestId: any) => void;
27
+ ready: () => void;
28
+ requestAI: (prompt: any, context?: {}) => string;
29
+ requestSave: (data: any) => void;
30
+ notifyExportComplete: (data: any) => void;
31
+ destroy: () => void;
32
+ };
33
+ declare namespace _default {
34
+ export { createBridge };
35
+ export { createBridgeReceiver };
36
+ }
37
+ export default _default;
@@ -0,0 +1,134 @@
1
+ /**
2
+ * Generate unique artifact ID
3
+ */
4
+ export function generateArtifactId(prefix?: string): string;
5
+ /**
6
+ * Check if language/type supports preview
7
+ */
8
+ export function isPreviewable(language: any): boolean;
9
+ /**
10
+ * Check if language/type should open in panel by default
11
+ */
12
+ export function isPanelArtifact(language: any): boolean;
13
+ /**
14
+ * Check if platform is supported for social previews
15
+ */
16
+ export function isSupportedSocialPlatform(platform: any): boolean;
17
+ /**
18
+ * Get display name for language/type
19
+ */
20
+ export function getLanguageDisplayName(language: any): any;
21
+ /**
22
+ * Get file extension for language/type
23
+ */
24
+ export function getFileExtension(language: any): any;
25
+ /**
26
+ * Get language/type icon SVG path
27
+ */
28
+ export function getLanguageIcon(language: any): any;
29
+ /**
30
+ * Format bytes to human readable string
31
+ */
32
+ export function formatBytes(bytes: any): string;
33
+ /**
34
+ * Decode HTML entities
35
+ */
36
+ export function decodeHtml(encoded: any): any;
37
+ /**
38
+ * Encode HTML for safe embedding
39
+ */
40
+ export function encodeHtml(code: any): any;
41
+ /**
42
+ * Encode JSON for safe embedding in HTML attributes using Base64
43
+ */
44
+ export function encodeJsonForAttribute(obj: any): string;
45
+ /**
46
+ * Decode JSON from a Base64-encoded HTML attribute value
47
+ */
48
+ export function decodeJsonFromAttribute(encoded: any): any;
49
+ /**
50
+ * Extract title from code content
51
+ */
52
+ export function extractArtifactTitle(code: any, language: any): any;
53
+ /**
54
+ * Determine if form should render inline or in panel
55
+ * Parses JSON from code to check complexity
56
+ */
57
+ export function shouldFormBeInline(code: any): boolean;
58
+ /**
59
+ * Determine if artifact should be inline based on language
60
+ */
61
+ export function getIsInline(language: any, code: any): boolean;
62
+ /**
63
+ * Parse artifacts from rendered HTML (simple detection, no replacement)
64
+ */
65
+ export function parseArtifacts(html: any, messageId: any): {
66
+ id: string;
67
+ messageId: string;
68
+ type: string;
69
+ language: string;
70
+ title: any;
71
+ code: string;
72
+ isInline: boolean;
73
+ isPreviewable: boolean;
74
+ isPanelArtifact: boolean;
75
+ size: number;
76
+ lineCount: number;
77
+ createdAt: string;
78
+ }[];
79
+ /**
80
+ * Extract code blocks and replace with placeholders
81
+ * Handles all artifact types: code, form, social
82
+ */
83
+ export function extractCodeBlockArtifacts(html: any, messageId: any, options?: {}): {
84
+ artifacts: any[];
85
+ html: any;
86
+ };
87
+ export namespace ARTIFACT_TYPES {
88
+ let CODE: string;
89
+ let FORM: string;
90
+ let SOCIAL: string;
91
+ let IMAGE: string;
92
+ let VIDEO: string;
93
+ let AUDIO: string;
94
+ let DOCUMENT: string;
95
+ let EMBED: string;
96
+ let MAP: string;
97
+ let CHART: string;
98
+ }
99
+ /**
100
+ * Supported social platforms
101
+ */
102
+ export const SOCIAL_PLATFORMS: string[];
103
+ /**
104
+ * Languages/types that support live preview
105
+ */
106
+ export const PREVIEWABLE_LANGUAGES: string[];
107
+ /**
108
+ * Languages/types that open in panel (vs inline)
109
+ */
110
+ export const PANEL_LANGUAGES: string[];
111
+ declare namespace _default {
112
+ export { ARTIFACT_TYPES };
113
+ export { PREVIEWABLE_LANGUAGES };
114
+ export { PANEL_LANGUAGES };
115
+ export { SOCIAL_PLATFORMS };
116
+ export { generateArtifactId };
117
+ export { isPreviewable };
118
+ export { isPanelArtifact };
119
+ export { isSupportedSocialPlatform };
120
+ export { getLanguageDisplayName };
121
+ export { getFileExtension };
122
+ export { getLanguageIcon };
123
+ export { getIsInline };
124
+ export { formatBytes };
125
+ export { decodeHtml };
126
+ export { encodeHtml };
127
+ export { encodeJsonForAttribute };
128
+ export { decodeJsonFromAttribute };
129
+ export { extractArtifactTitle };
130
+ export { parseArtifacts };
131
+ export { extractCodeBlockArtifacts };
132
+ export { shouldFormBeInline };
133
+ }
134
+ export default _default;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Check if Prism is available
3
+ */
4
+ export function isPrismAvailable(): any;
5
+ /**
6
+ * Highlight all code blocks in a container
7
+ * @param {HTMLElement|string} container - Container element or selector
8
+ */
9
+ export function highlightAll(container: HTMLElement | string): void;
10
+ /**
11
+ * Highlight a single code block
12
+ * @param {HTMLElement} element - Code element to highlight
13
+ * @param {string} language - Language identifier
14
+ */
15
+ export function highlightElement(element: HTMLElement, language: string): void;
16
+ /**
17
+ * Highlight code string and return HTML
18
+ * @param {string} code - Code to highlight
19
+ * @param {string} language - Language identifier
20
+ * @returns {string} - Highlighted HTML
21
+ */
22
+ export function highlightCode(code: string, language: string): string;
23
+ /**
24
+ * Detect language from element classes
25
+ * @param {HTMLElement} element - Code element
26
+ * @returns {string|null} - Detected language or null
27
+ */
28
+ export function detectLanguage(element: HTMLElement): string | null;
29
+ /**
30
+ * Normalize language identifier to Prism-compatible name
31
+ */
32
+ export function normalizeLanguage(lang: any): any;
33
+ /**
34
+ * Create a mutation observer to auto-highlight new code blocks
35
+ * @param {HTMLElement} container - Container to observe
36
+ * @returns {MutationObserver} - Observer instance
37
+ */
38
+ export function createAutoHighlighter(container: HTMLElement): MutationObserver;
39
+ /**
40
+ * Get list of supported languages (if Prism is available)
41
+ */
42
+ export function getSupportedLanguages(): string[];
43
+ declare namespace _default {
44
+ export { isPrismAvailable };
45
+ export { highlightAll };
46
+ export { highlightElement };
47
+ export { highlightCode };
48
+ export { detectLanguage };
49
+ export { normalizeLanguage };
50
+ export { createAutoHighlighter };
51
+ export { getSupportedLanguages };
52
+ }
53
+ export default _default;
@@ -0,0 +1,124 @@
1
+ /**
2
+ * Create Artifactuse instance
3
+ */
4
+ export function createArtifactuse(userConfig?: {}): {
5
+ config: any;
6
+ state: {
7
+ getState: () => {
8
+ artifacts: any[];
9
+ activeArtifactId: any;
10
+ isPanelOpen: boolean;
11
+ viewMode: string;
12
+ isFullscreen: boolean;
13
+ };
14
+ subscribe: (callback: any) => () => void;
15
+ addArtifact: (artifact: any) => void;
16
+ addArtifacts: (artifacts: any) => void;
17
+ removeArtifact: (artifactId: any) => void;
18
+ getArtifact: (artifactId: any) => any;
19
+ getActiveArtifact: () => any;
20
+ getArtifactsByMessageId: (messageId: any) => any[];
21
+ getArtifactsByType: (type: any) => any[];
22
+ getArtifactCount: () => number;
23
+ setActiveArtifact: (artifactId: any) => void;
24
+ clearActiveArtifact: () => void;
25
+ setPanelOpen: (isOpen: any) => void;
26
+ setViewMode: (mode: any) => void;
27
+ setFullscreen: (isFullscreen: any) => void;
28
+ clear: () => void;
29
+ batch: (updateFn: any) => void;
30
+ };
31
+ getState: () => {
32
+ artifacts: any[];
33
+ activeArtifactId: any;
34
+ isPanelOpen: boolean;
35
+ viewMode: string;
36
+ isFullscreen: boolean;
37
+ };
38
+ subscribe: (callback: any) => () => void;
39
+ processMessage: (content: any, messageId: any) => {
40
+ html: string | Promise<string>;
41
+ artifacts: any[];
42
+ };
43
+ initializeContent: (container?: Document) => Promise<void>;
44
+ openArtifact: (artifact: any) => void;
45
+ closePanel: () => void;
46
+ togglePanel: () => void;
47
+ toggleFullscreen: () => void;
48
+ setViewMode: (mode: any) => void;
49
+ getPanelUrl: (artifact: any, options?: {}) => any;
50
+ sendToPanel: (action: any, data: any) => void;
51
+ hasPanel: (artifact: any) => any;
52
+ registerPanel: (typesOrLang: string | string[], panel: string | object) => void;
53
+ unregisterPanel: (typesOrLang: string | string[]) => void;
54
+ getPanelTypes: () => any;
55
+ panelResolver: any;
56
+ theme: {
57
+ readonly current: string;
58
+ readonly resolved: string;
59
+ readonly colors: any;
60
+ getResolvedTheme: () => string;
61
+ getColors: () => any;
62
+ getCSSVariables: () => string;
63
+ getCSS: () => string;
64
+ apply: (container?: HTMLElement) => void;
65
+ set: (theme: any) => void;
66
+ toggle: () => void;
67
+ setColors: (newColors: any, theme?: any) => void;
68
+ watchSystemTheme: (callback: any) => () => void;
69
+ };
70
+ applyTheme: () => void;
71
+ setTheme: (newTheme: any) => void;
72
+ getTheme: () => string;
73
+ on: (event: any, callback: any) => () => void;
74
+ off: (event: any, callback: any) => void;
75
+ emit: (event: any, data: any) => void;
76
+ bridge: {
77
+ setIframe: (iframe: any) => void;
78
+ send: (action: any, data: any, requestId?: any) => any;
79
+ request: (action: any, data: any, timeout?: number) => Promise<any>;
80
+ on: (action: any, callback: any) => () => void;
81
+ off: (action: any, callback: any) => void;
82
+ loadArtifact: (artifact: any) => any;
83
+ updateArtifact: (artifactId: any, updates: any) => any;
84
+ requestSave: () => Promise<any>;
85
+ requestExport: (format?: string) => Promise<any>;
86
+ sendAIResponse: (response: any, requestId: any) => any;
87
+ destroy: () => void;
88
+ readonly isReady: boolean;
89
+ readonly iframe: any;
90
+ };
91
+ destroy: () => void;
92
+ };
93
+ export * from "./processors/index.js";
94
+ export * from "./highlight.js";
95
+ export { createState } from "./state.js";
96
+ export { createBridge } from "./bridge.js";
97
+ export { createTheme } from "./theme.js";
98
+ export default createArtifactuse;
99
+ export namespace DEFAULT_PANELS {
100
+ let form: string;
101
+ let video: string;
102
+ let videoeditor: string;
103
+ let timeline: string;
104
+ let canvas: string;
105
+ let whiteboard: string;
106
+ let drawing: string;
107
+ let json: string;
108
+ let svg: string;
109
+ let diff: string;
110
+ let patch: string;
111
+ let javascript: string;
112
+ let js: string;
113
+ let python: string;
114
+ let py: string;
115
+ let jsx: string;
116
+ let react: string;
117
+ let vue: string;
118
+ let html: string;
119
+ let htm: string;
120
+ let markdown: string;
121
+ let md: string;
122
+ let mermaid: string;
123
+ }
124
+ export { parseArtifacts, extractCodeBlockArtifacts, getIsInline as isInlineArtifact } from "./detector.js";
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Process all audio URLs in HTML
3
+ * @param {string} html - HTML content to process
4
+ * @param {object} options - Processing options
5
+ * @param {string} options.theme - Theme: 'dark' | 'light'
6
+ */
7
+ export function processAudio(html: string, options?: {
8
+ theme: string;
9
+ }): string;
10
+ /**
11
+ * Create custom waveform audio player
12
+ */
13
+ export function createAudioPlayer(audioUrl: any): string;
14
+ /**
15
+ * Create SoundCloud embed
16
+ */
17
+ export function createSoundCloudEmbed(url: any): string;
18
+ /**
19
+ * Create Spotify embed
20
+ * @param {string} type - track, album, playlist, artist, episode, show
21
+ * @param {string} id - Spotify ID
22
+ * @param {string} theme - 'dark' | 'light'
23
+ */
24
+ export function createSpotifyEmbed(type: string, id: string, theme?: string): string;
25
+ /**
26
+ * Create Apple Music embed
27
+ */
28
+ export function createAppleMusicEmbed(country: any, type: any, id: any): string;
29
+ declare namespace _default {
30
+ export { processAudio };
31
+ export { createAudioPlayer };
32
+ export { createSoundCloudEmbed };
33
+ export { createSpotifyEmbed };
34
+ export { createAppleMusicEmbed };
35
+ }
36
+ export default _default;
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Initialize all audio players in the document
3
+ * Call this after DOM is ready
4
+ */
5
+ export function initializeAudioPlayers(container?: Document): void;
6
+ /**
7
+ * Play audio
8
+ */
9
+ export function playAudio(playerId: any): void;
10
+ /**
11
+ * Pause audio
12
+ */
13
+ export function pauseAudio(playerId: any): void;
14
+ /**
15
+ * Stop all players
16
+ */
17
+ export function stopAllPlayers(): void;
18
+ /**
19
+ * Get player state
20
+ */
21
+ export function getPlayerState(playerId: any): any;
22
+ /**
23
+ * Destroy a player instance
24
+ */
25
+ export function destroyPlayer(playerId: any): void;
26
+ /**
27
+ * Destroy all players
28
+ */
29
+ export function destroyAllPlayers(): void;
30
+ declare namespace _default {
31
+ export { initializeAudioPlayers };
32
+ export { playAudio };
33
+ export { pauseAudio };
34
+ export { stopAllPlayers };
35
+ export { getPlayerState };
36
+ export { destroyPlayer };
37
+ export { destroyAllPlayers };
38
+ }
39
+ export default _default;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Process all code platform URLs in HTML
3
+ * @param {string} html - HTML content to process
4
+ * @param {object} options - Processing options
5
+ * @param {string} options.theme - Theme: 'dark' | 'light'
6
+ */
7
+ export function processCodeEmbeds(html: string, options?: {
8
+ theme: string;
9
+ }): string;
10
+ /**
11
+ * Create GitHub Gist embed
12
+ * Note: Gist doesn't support theme parameter, it uses user's GitHub preference
13
+ */
14
+ export function createGistEmbed(user: any, gistId: any): string;
15
+ /**
16
+ * Create CodePen embed
17
+ * @param {string} user - CodePen username
18
+ * @param {string} penId - Pen ID
19
+ * @param {string} theme - 'dark' | 'light'
20
+ */
21
+ export function createCodePenEmbed(user: string, penId: string, theme?: string): string;
22
+ /**
23
+ * Create CodeSandbox embed
24
+ * @param {string} sandboxId - Sandbox ID
25
+ * @param {string} theme - 'dark' | 'light'
26
+ */
27
+ export function createCodeSandboxEmbed(sandboxId: string, theme?: string): string;
28
+ /**
29
+ * Create JSFiddle embed
30
+ * @param {string} user - JSFiddle username
31
+ * @param {string} fiddleId - Fiddle ID
32
+ * @param {string} theme - 'dark' | 'light'
33
+ */
34
+ export function createJSFiddleEmbed(user: string, fiddleId: string, theme?: string): string;
35
+ /**
36
+ * Create StackBlitz embed
37
+ * @param {string} projectId - Project ID
38
+ * @param {string} theme - 'dark' | 'light'
39
+ */
40
+ export function createStackBlitzEmbed(projectId: string, theme?: string): string;
41
+ /**
42
+ * Create Replit embed
43
+ * Note: Replit uses system/user preference for theme, parameter included for consistency
44
+ * @param {string} user - Replit username
45
+ * @param {string} replName - Repl name
46
+ * @param {string} theme - 'dark' | 'light' (may not be honored by Replit)
47
+ */
48
+ export function createReplitEmbed(user: string, replName: string, theme?: string): string;
49
+ declare namespace _default {
50
+ export { processCodeEmbeds };
51
+ export { createGistEmbed };
52
+ export { createCodePenEmbed };
53
+ export { createCodeSandboxEmbed };
54
+ export { createJSFiddleEmbed };
55
+ export { createStackBlitzEmbed };
56
+ export { createReplitEmbed };
57
+ }
58
+ export default _default;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Process all data visualization URLs in HTML
3
+ */
4
+ export function processDataViz(html: any): any;
5
+ /**
6
+ * Create Tableau Public embed
7
+ */
8
+ export function createTableauEmbed(vizPath: any): string;
9
+ /**
10
+ * Create Flourish embed
11
+ */
12
+ export function createFlourishEmbed(vizId: any): string;
13
+ /**
14
+ * Create Datawrapper embed
15
+ */
16
+ export function createDatawrapperEmbed(chartId: any): string;
17
+ /**
18
+ * Create Infogram embed
19
+ */
20
+ export function createInfogramEmbed(chartId: any): string;
21
+ declare namespace _default {
22
+ export { processDataViz };
23
+ export { createTableauEmbed };
24
+ export { createFlourishEmbed };
25
+ export { createDatawrapperEmbed };
26
+ export { createInfogramEmbed };
27
+ }
28
+ export default _default;
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Process all 3D and design URLs in HTML
3
+ * @param {string} html - HTML content to process
4
+ * @param {object} options - Processing options
5
+ * @param {string} options.theme - Theme: 'dark' | 'light'
6
+ */
7
+ export function process3DEmbeds(html: string, options?: {
8
+ theme: string;
9
+ }): string;
10
+ /**
11
+ * Create Sketchfab 3D model embed
12
+ * @param {string} modelId - Sketchfab model ID
13
+ * @param {string} theme - 'dark' | 'light'
14
+ */
15
+ export function createSketchfabEmbed(modelId: string, theme?: string): string;
16
+ /**
17
+ * Create Figma file embed
18
+ * Note: Figma embed doesn't support theme parameter
19
+ */
20
+ export function createFigmaEmbed(fileKey: any, nodeId: any): string;
21
+ /**
22
+ * Create Figma prototype embed
23
+ * Note: Figma embed doesn't support theme parameter
24
+ */
25
+ export function createFigmaPrototypeEmbed(fileKey: any, originalUrl: any): string;
26
+ /**
27
+ * Create Canva embed (placeholder with link - Canva doesn't support direct embeds)
28
+ * Note: Canva doesn't support direct embedding with theme parameter
29
+ */
30
+ export function createCanvaEmbed(designId: any, originalUrl: any): string;
31
+ /**
32
+ * Create Dribbble shot embed
33
+ * Note: Dribbble embed doesn't support theme parameter
34
+ */
35
+ export function createDribbbleEmbed(shotId: any): string;
36
+ /**
37
+ * Create Behance project embed
38
+ * Note: Behance embed doesn't support theme parameter
39
+ */
40
+ export function createBehanceEmbed(projectId: any, originalUrl: any): string;
41
+ declare namespace _default {
42
+ export { process3DEmbeds };
43
+ export { createSketchfabEmbed };
44
+ export { createFigmaEmbed };
45
+ export { createFigmaPrototypeEmbed };
46
+ export { createCanvaEmbed };
47
+ export { createDribbbleEmbed };
48
+ export { createBehanceEmbed };
49
+ }
50
+ export default _default;
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Process PDF URLs in HTML
3
+ */
4
+ export function processPdfs(html: any): any;
5
+ /**
6
+ * Create PDF embed
7
+ */
8
+ export function createPdfEmbed(url: any): string;
9
+ /**
10
+ * Process Google Docs/Sheets/Slides/Forms URLs
11
+ */
12
+ export function processGoogleDocs(html: any): any;
13
+ /**
14
+ * Create Google Doc/Sheet/Slides embed
15
+ */
16
+ export function createGoogleDocEmbed(docId: any, type: any): string;
17
+ /**
18
+ * Create Google Form embed
19
+ */
20
+ export function createGoogleFormEmbed(formId: any): string;
21
+ /**
22
+ * Process Office document URLs
23
+ */
24
+ export function processOfficeDocuments(html: any): any;
25
+ /**
26
+ * Create Office document embed (Word, Excel, PowerPoint)
27
+ */
28
+ export function createOfficeEmbed(fileUrl: any): string;
29
+ declare namespace _default {
30
+ export { processPdfs };
31
+ export { createPdfEmbed };
32
+ export { processGoogleDocs };
33
+ export { createGoogleDocEmbed };
34
+ export { createGoogleFormEmbed };
35
+ export { processOfficeDocuments };
36
+ export { createOfficeEmbed };
37
+ }
38
+ export default _default;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Process all image URLs in HTML (linkified and raw)
3
+ */
4
+ export function processImages(html: any): any;
5
+ /**
6
+ * Render a single image with lightbox support
7
+ */
8
+ export function renderImageHtml(src: any, title: any, alt: any): string;
9
+ /**
10
+ * Process HTML to group consecutive images into galleries
11
+ */
12
+ export function processImageGalleries(html: any): string;
13
+ /**
14
+ * Create a gallery wrapper for multiple images
15
+ */
16
+ export function createImageGallery(imageContainers: any): string;
17
+ declare namespace _default {
18
+ export { processImages };
19
+ export { renderImageHtml };
20
+ export { processImageGalleries };
21
+ export { createImageGallery };
22
+ }
23
+ export default _default;