@nice2dev/ui-ai 1.0.6 → 1.0.10

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/dist/NiceAIHintBubble.d.ts.map +1 -1
  2. package/dist/NiceAIProvider.d.ts +1 -1
  3. package/dist/NiceAIProvider.d.ts.map +1 -1
  4. package/dist/NiceAccessibilityAI.d.ts +98 -0
  5. package/dist/NiceAccessibilityAI.d.ts.map +1 -0
  6. package/dist/NiceChartAI.d.ts +112 -0
  7. package/dist/NiceChartAI.d.ts.map +1 -0
  8. package/dist/NiceCodeEditorAI.d.ts +114 -0
  9. package/dist/NiceCodeEditorAI.d.ts.map +1 -0
  10. package/dist/NiceDataGridAI.d.ts +85 -0
  11. package/dist/NiceDataGridAI.d.ts.map +1 -0
  12. package/dist/NiceDataLabeler.d.ts.map +1 -1
  13. package/dist/NiceFormBuilderAI.d.ts +107 -0
  14. package/dist/NiceFormBuilderAI.d.ts.map +1 -0
  15. package/dist/NiceIconSuggestorAI.d.ts +81 -0
  16. package/dist/NiceIconSuggestorAI.d.ts.map +1 -0
  17. package/dist/NiceLayoutAI.d.ts +103 -0
  18. package/dist/NiceLayoutAI.d.ts.map +1 -0
  19. package/dist/NiceMLStudio.d.ts.map +1 -1
  20. package/dist/NiceModelInference.d.ts.map +1 -1
  21. package/dist/NiceReportBuilderAI.d.ts +176 -0
  22. package/dist/NiceReportBuilderAI.d.ts.map +1 -0
  23. package/dist/NiceThemeGeneratorAI.d.ts +186 -0
  24. package/dist/NiceThemeGeneratorAI.d.ts.map +1 -0
  25. package/dist/NiceWorkflowDesignerAI.d.ts +108 -0
  26. package/dist/NiceWorkflowDesignerAI.d.ts.map +1 -0
  27. package/dist/cost-tracker.d.ts +148 -0
  28. package/dist/cost-tracker.d.ts.map +1 -0
  29. package/dist/fallback-strategies.d.ts +120 -0
  30. package/dist/fallback-strategies.d.ts.map +1 -0
  31. package/dist/index.cjs +3426 -12
  32. package/dist/index.d.ts +32 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.mjs +10496 -1431
  35. package/dist/integrations.d.ts.map +1 -1
  36. package/dist/llm-providers.d.ts +180 -0
  37. package/dist/llm-providers.d.ts.map +1 -0
  38. package/dist/prompt-templates.d.ts +64 -0
  39. package/dist/prompt-templates.d.ts.map +1 -0
  40. package/dist/rateLimiter.d.ts.map +1 -1
  41. package/dist/streaming.d.ts.map +1 -1
  42. package/dist/useNiceAIHint.d.ts.map +1 -1
  43. package/dist/wrappers.d.ts.map +1 -1
  44. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NiceIconSuggestorAI.d.ts","sourceRoot":"","sources":["../src/NiceIconSuggestorAI.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ import { NiceAIConfig } from './types';
2
+ import { ReactNode } from 'react';
3
+
4
+ /** Layout type */
5
+ export type AILayoutType = 'dashboard' | 'form' | 'list' | 'detail' | 'landing' | 'settings' | 'wizard' | 'split' | 'grid' | 'kanban' | 'timeline';
6
+ /** Layout direction */
7
+ export type AILayoutDirection = 'row' | 'column' | 'grid';
8
+ /** Responsive breakpoint */
9
+ export type AIBreakpoint = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
10
+ /** Layout region/area */
11
+ export interface AILayoutRegion {
12
+ id: string;
13
+ type: 'header' | 'sidebar' | 'main' | 'footer' | 'aside' | 'nav' | 'content';
14
+ position?: {
15
+ gridArea?: string;
16
+ gridColumn?: string;
17
+ gridRow?: string;
18
+ };
19
+ size?: {
20
+ width?: string;
21
+ height?: string;
22
+ minWidth?: string;
23
+ maxWidth?: string;
24
+ };
25
+ responsive?: Partial<Record<AIBreakpoint, Partial<AILayoutRegion>>>;
26
+ children?: AILayoutElement[];
27
+ }
28
+ /** Layout element */
29
+ export interface AILayoutElement {
30
+ id: string;
31
+ type: string;
32
+ props?: Record<string, unknown>;
33
+ children?: AILayoutElement[];
34
+ responsive?: Partial<Record<AIBreakpoint, Partial<AILayoutElement>>>;
35
+ }
36
+ /** Container layout */
37
+ export interface AIContainerLayout {
38
+ direction: AILayoutDirection;
39
+ gap?: string;
40
+ padding?: string;
41
+ align?: 'start' | 'center' | 'end' | 'stretch';
42
+ justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly';
43
+ wrap?: boolean;
44
+ gridColumns?: number | string;
45
+ gridRows?: string;
46
+ }
47
+ /** Generated layout definition */
48
+ export interface AILayoutDefinition {
49
+ id: string;
50
+ name: string;
51
+ description?: string;
52
+ type: AILayoutType;
53
+ container: AIContainerLayout;
54
+ regions: AILayoutRegion[];
55
+ breakpoints?: Record<AIBreakpoint, string>;
56
+ cssGrid?: string;
57
+ cssVariables?: Record<string, string>;
58
+ }
59
+ /** Layout generation result */
60
+ export interface AILayoutResult {
61
+ layout?: AILayoutDefinition;
62
+ rawResponse?: string;
63
+ error?: string;
64
+ latencyMs?: number;
65
+ suggestions?: string[];
66
+ }
67
+ /** Hook options */
68
+ export interface UseLayoutAIOptions {
69
+ config?: NiceAIConfig;
70
+ targetDevice?: 'desktop' | 'tablet' | 'mobile' | 'responsive';
71
+ onLayoutGenerated?: (layout: AILayoutDefinition) => void;
72
+ onError?: (error: string) => void;
73
+ }
74
+ export declare function useLayoutAI(options?: UseLayoutAIOptions): {
75
+ generateLayout: (description: string, layoutType?: AILayoutType) => Promise<AILayoutResult>;
76
+ toCSS: (layout: AILayoutDefinition) => string;
77
+ toReactComponent: (layout: AILayoutDefinition) => string;
78
+ loading: boolean;
79
+ lastResult: AILayoutResult | null;
80
+ clearResults: () => void;
81
+ abort: () => void;
82
+ isConfigured: boolean;
83
+ };
84
+ export interface NiceLayoutAIProps {
85
+ /** AI configuration override */
86
+ config?: NiceAIConfig;
87
+ /** Target device */
88
+ targetDevice?: 'desktop' | 'tablet' | 'mobile' | 'responsive';
89
+ /** Callback when layout is generated */
90
+ onGenerate?: (layout: AILayoutDefinition) => void;
91
+ /** Show layout type selector */
92
+ showTypeSelector?: boolean;
93
+ /** Show preview */
94
+ showPreview?: boolean;
95
+ /** Custom class name */
96
+ className?: string;
97
+ /** Custom styles */
98
+ style?: React.CSSProperties;
99
+ /** Custom layout renderer */
100
+ renderLayout?: (layout: AILayoutDefinition) => ReactNode;
101
+ }
102
+ export declare function NiceLayoutAI({ config, targetDevice, onGenerate, showTypeSelector, showPreview, className, style, renderLayout, }: NiceLayoutAIProps): import("react/jsx-runtime").JSX.Element;
103
+ //# sourceMappingURL=NiceLayoutAI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NiceLayoutAI.d.ts","sourceRoot":"","sources":["../src/NiceLayoutAI.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NiceMLStudio.d.ts","sourceRoot":"","sources":["../src/NiceMLStudio.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AACrD,OAAO,KAAK,EACV,iBAAiB,EAQlB,MAAM,YAAY,CAAC;AA2CpB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAslBpD,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"NiceMLStudio.d.ts","sourceRoot":"","sources":["../src/NiceMLStudio.tsx"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD,OAAO,KAAK,EACV,iBAAiB,EAQlB,MAAM,YAAY,CAAC;AA2CpB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAsmBpD,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"NiceModelInference.d.ts","sourceRoot":"","sources":["../src/NiceModelInference.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAwC,MAAM,OAAO,CAAC;AAC7D,OAAO,KAAK,EACV,uBAAuB,EAQxB,MAAM,YAAY,CAAC;AAsBpB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA4lBhE,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"NiceModelInference.d.ts","sourceRoot":"","sources":["../src/NiceModelInference.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EACV,uBAAuB,EAQxB,MAAM,YAAY,CAAC;AAsBpB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAgmBhE,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,176 @@
1
+ import { NiceAIConfig } from './types';
2
+ import { ReactNode } from 'react';
3
+
4
+ /** Report section types */
5
+ export type AIReportSectionType = 'header' | 'summary' | 'kpi' | 'table' | 'chart' | 'text' | 'image' | 'divider' | 'spacer' | 'pageBreak' | 'footer' | 'toc' | 'customBlock';
6
+ /** Chart types for reports */
7
+ export type AIReportChartType = 'line' | 'bar' | 'pie' | 'donut' | 'area' | 'column' | 'scatter' | 'combo' | 'gauge' | 'heatmap';
8
+ /** KPI style */
9
+ export type AIKPIStyle = 'card' | 'inline' | 'gauge' | 'sparkline';
10
+ /** Report section */
11
+ export interface AIReportSection {
12
+ id: string;
13
+ type: AIReportSectionType;
14
+ title?: string;
15
+ order: number;
16
+ config: AIReportSectionConfig;
17
+ }
18
+ /** Section configuration union */
19
+ export type AIReportSectionConfig = AIHeaderConfig | AISummaryConfig | AIKPIConfig | AITableConfig | AIChartConfig | AITextConfig | AIImageConfig | Record<string, unknown>;
20
+ /** Header section config */
21
+ export interface AIHeaderConfig {
22
+ title: string;
23
+ subtitle?: string;
24
+ logo?: string;
25
+ date?: boolean;
26
+ author?: string;
27
+ }
28
+ /** Summary section config */
29
+ export interface AISummaryConfig {
30
+ text: string;
31
+ highlights?: string[];
32
+ }
33
+ /** KPI section config */
34
+ export interface AIKPIConfig {
35
+ kpis: Array<{
36
+ label: string;
37
+ value: string;
38
+ change?: number;
39
+ changeLabel?: string;
40
+ style?: AIKPIStyle;
41
+ }>;
42
+ columns?: number;
43
+ }
44
+ /** Table section config */
45
+ export interface AITableConfig {
46
+ dataSource: string;
47
+ columns: Array<{
48
+ field: string;
49
+ header: string;
50
+ width?: string;
51
+ format?: string;
52
+ align?: 'left' | 'center' | 'right';
53
+ }>;
54
+ pagination?: boolean;
55
+ pageSize?: number;
56
+ sortable?: boolean;
57
+ filterable?: boolean;
58
+ totals?: boolean;
59
+ }
60
+ /** Chart section config */
61
+ export interface AIChartConfig {
62
+ chartType: AIReportChartType;
63
+ dataSource: string;
64
+ xAxis?: string;
65
+ yAxis?: string;
66
+ series?: Array<{
67
+ field: string;
68
+ label: string;
69
+ color?: string;
70
+ }>;
71
+ title?: string;
72
+ legend?: boolean;
73
+ height?: number;
74
+ }
75
+ /** Text section config */
76
+ export interface AITextConfig {
77
+ content: string;
78
+ format?: 'plain' | 'markdown' | 'html';
79
+ }
80
+ /** Image section config */
81
+ export interface AIImageConfig {
82
+ src: string;
83
+ alt?: string;
84
+ width?: string;
85
+ height?: string;
86
+ caption?: string;
87
+ }
88
+ /** Report layout definition */
89
+ export interface AIReportLayout {
90
+ id: string;
91
+ name: string;
92
+ description?: string;
93
+ orientation: 'portrait' | 'landscape';
94
+ pageSize: 'A4' | 'Letter' | 'Legal' | 'A3';
95
+ margins?: {
96
+ top: number;
97
+ right: number;
98
+ bottom: number;
99
+ left: number;
100
+ };
101
+ sections: AIReportSection[];
102
+ dataSources?: Array<{
103
+ id: string;
104
+ name: string;
105
+ type: string;
106
+ }>;
107
+ parameters?: Array<{
108
+ name: string;
109
+ type: string;
110
+ defaultValue?: unknown;
111
+ }>;
112
+ styles?: Record<string, Record<string, unknown>>;
113
+ }
114
+ /** Report generation result */
115
+ export interface AIReportResult {
116
+ layout?: AIReportLayout;
117
+ rawResponse?: string;
118
+ error?: string;
119
+ latencyMs?: number;
120
+ suggestions?: string[];
121
+ }
122
+ /** Hook options */
123
+ export interface UseReportBuilderAIOptions {
124
+ config?: NiceAIConfig;
125
+ dataSources?: Array<{
126
+ id: string;
127
+ name: string;
128
+ fields: string[];
129
+ }>;
130
+ context?: string;
131
+ onReportGenerated?: (layout: AIReportLayout) => void;
132
+ onError?: (error: string) => void;
133
+ }
134
+ export declare function useReportBuilderAI(options?: UseReportBuilderAIOptions): {
135
+ generateReport: (description: string) => Promise<AIReportResult>;
136
+ suggestSections: (existingLayout: AIReportLayout) => Promise<AIReportSection[]>;
137
+ generateSummary: (data: Record<string, unknown>) => Promise<string | null>;
138
+ suggestChartType: (data: unknown[], description: string) => Promise<AIReportChartType>;
139
+ loading: boolean;
140
+ lastResult: AIReportResult | null;
141
+ history: {
142
+ request: string;
143
+ result: AIReportResult;
144
+ }[];
145
+ clearResults: () => void;
146
+ abort: () => void;
147
+ isConfigured: boolean;
148
+ };
149
+ export interface NiceReportBuilderAIProps {
150
+ /** AI configuration override */
151
+ config?: NiceAIConfig;
152
+ /** Available data sources */
153
+ dataSources?: Array<{
154
+ id: string;
155
+ name: string;
156
+ fields: string[];
157
+ }>;
158
+ /** Context information */
159
+ context?: string;
160
+ /** Callback when report is generated */
161
+ onGenerate?: (layout: AIReportLayout) => void;
162
+ /** Placeholder text */
163
+ placeholder?: string;
164
+ /** Show templates */
165
+ showTemplates?: boolean;
166
+ /** Show preview */
167
+ showPreview?: boolean;
168
+ /** Custom class name */
169
+ className?: string;
170
+ /** Custom styles */
171
+ style?: React.CSSProperties;
172
+ /** Custom report renderer */
173
+ renderReport?: (layout: AIReportLayout) => ReactNode;
174
+ }
175
+ export declare function NiceReportBuilderAI({ config, dataSources, context, onGenerate, placeholder, showTemplates, showPreview, className, style, renderReport, }: NiceReportBuilderAIProps): import("react/jsx-runtime").JSX.Element;
176
+ //# sourceMappingURL=NiceReportBuilderAI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NiceReportBuilderAI.d.ts","sourceRoot":"","sources":["../src/NiceReportBuilderAI.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ import { NiceAIConfig } from './types';
2
+
3
+ /** Color palette */
4
+ export interface AIColorPalette {
5
+ primary: string;
6
+ primaryLight: string;
7
+ primaryDark: string;
8
+ secondary: string;
9
+ secondaryLight: string;
10
+ secondaryDark: string;
11
+ accent: string;
12
+ background: string;
13
+ surface: string;
14
+ text: string;
15
+ textMuted: string;
16
+ textInverse: string;
17
+ border: string;
18
+ success: string;
19
+ warning: string;
20
+ error: string;
21
+ info: string;
22
+ }
23
+ /** Typography settings */
24
+ export interface AITypography {
25
+ fontFamily: string;
26
+ fontFamilyMono: string;
27
+ fontSizeBase: string;
28
+ fontSizeXs: string;
29
+ fontSizeSm: string;
30
+ fontSizeMd: string;
31
+ fontSizeLg: string;
32
+ fontSizeXl: string;
33
+ fontSize2xl: string;
34
+ fontSize3xl: string;
35
+ fontWeightLight: number;
36
+ fontWeightNormal: number;
37
+ fontWeightMedium: number;
38
+ fontWeightSemibold: number;
39
+ fontWeightBold: number;
40
+ lineHeightTight: number;
41
+ lineHeightNormal: number;
42
+ lineHeightRelaxed: number;
43
+ letterSpacing: string;
44
+ }
45
+ /** Spacing scale */
46
+ export interface AISpacing {
47
+ xs: string;
48
+ sm: string;
49
+ md: string;
50
+ lg: string;
51
+ xl: string;
52
+ '2xl': string;
53
+ '3xl': string;
54
+ '4xl': string;
55
+ }
56
+ /** Border radius settings */
57
+ export interface AIBorderRadius {
58
+ none: string;
59
+ sm: string;
60
+ md: string;
61
+ lg: string;
62
+ xl: string;
63
+ full: string;
64
+ }
65
+ /** Shadow settings */
66
+ export interface AIShadows {
67
+ none: string;
68
+ sm: string;
69
+ md: string;
70
+ lg: string;
71
+ xl: string;
72
+ }
73
+ /** Animation settings */
74
+ export interface AIAnimations {
75
+ durationFast: string;
76
+ durationNormal: string;
77
+ durationSlow: string;
78
+ easeIn: string;
79
+ easeOut: string;
80
+ easeInOut: string;
81
+ }
82
+ /** Component-specific overrides */
83
+ export interface AIComponentStyles {
84
+ button?: {
85
+ borderRadius?: string;
86
+ padding?: string;
87
+ fontWeight?: number;
88
+ textTransform?: 'none' | 'uppercase' | 'capitalize';
89
+ };
90
+ input?: {
91
+ borderRadius?: string;
92
+ padding?: string;
93
+ borderWidth?: string;
94
+ };
95
+ card?: {
96
+ borderRadius?: string;
97
+ shadow?: string;
98
+ padding?: string;
99
+ };
100
+ table?: {
101
+ headerBg?: string;
102
+ rowHoverBg?: string;
103
+ borderColor?: string;
104
+ };
105
+ }
106
+ /** Complete theme definition */
107
+ export interface AITheme {
108
+ id: string;
109
+ name: string;
110
+ description?: string;
111
+ mode: 'light' | 'dark';
112
+ colors: AIColorPalette;
113
+ typography: AITypography;
114
+ spacing: AISpacing;
115
+ borderRadius: AIBorderRadius;
116
+ shadows: AIShadows;
117
+ animations: AIAnimations;
118
+ components?: AIComponentStyles;
119
+ cssVariables?: Record<string, string>;
120
+ }
121
+ /** Theme generation result */
122
+ export interface AIThemeResult {
123
+ theme?: AITheme;
124
+ darkTheme?: AITheme;
125
+ rawResponse?: string;
126
+ error?: string;
127
+ latencyMs?: number;
128
+ suggestions?: string[];
129
+ }
130
+ /** Theme generation source */
131
+ export type AIThemeSource = {
132
+ type: 'description';
133
+ value: string;
134
+ } | {
135
+ type: 'brand';
136
+ value: {
137
+ name: string;
138
+ industry?: string;
139
+ keywords?: string[];
140
+ };
141
+ } | {
142
+ type: 'colors';
143
+ value: {
144
+ primary: string;
145
+ secondary?: string;
146
+ };
147
+ } | {
148
+ type: 'image';
149
+ value: string;
150
+ };
151
+ /** Hook options */
152
+ export interface UseThemeGeneratorAIOptions {
153
+ config?: NiceAIConfig;
154
+ generateDarkMode?: boolean;
155
+ onThemeGenerated?: (theme: AITheme, darkTheme?: AITheme) => void;
156
+ onError?: (error: string) => void;
157
+ }
158
+ export declare function useThemeGeneratorAI(options?: UseThemeGeneratorAIOptions): {
159
+ generateTheme: (source: AIThemeSource) => Promise<AIThemeResult>;
160
+ adjustTheme: (theme: AITheme, adjustments: string) => Promise<AITheme | null>;
161
+ toCSSVariables: (theme: AITheme) => string;
162
+ toTailwindConfig: (theme: AITheme) => string;
163
+ loading: boolean;
164
+ lastResult: AIThemeResult | null;
165
+ clearResults: () => void;
166
+ abort: () => void;
167
+ isConfigured: boolean;
168
+ };
169
+ export interface NiceThemeGeneratorAIProps {
170
+ /** AI configuration override */
171
+ config?: NiceAIConfig;
172
+ /** Generate dark mode variant */
173
+ generateDarkMode?: boolean;
174
+ /** Callback when theme is generated */
175
+ onGenerate?: (theme: AITheme, darkTheme?: AITheme) => void;
176
+ /** Show quick presets */
177
+ showPresets?: boolean;
178
+ /** Show preview */
179
+ showPreview?: boolean;
180
+ /** Custom class name */
181
+ className?: string;
182
+ /** Custom styles */
183
+ style?: React.CSSProperties;
184
+ }
185
+ export declare function NiceThemeGeneratorAI({ config, generateDarkMode, onGenerate, showPresets, showPreview, className, style, }: NiceThemeGeneratorAIProps): import("react/jsx-runtime").JSX.Element;
186
+ //# sourceMappingURL=NiceThemeGeneratorAI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NiceThemeGeneratorAI.d.ts","sourceRoot":"","sources":["../src/NiceThemeGeneratorAI.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ import { NiceAIConfig } from './types';
2
+ import { ReactNode } from 'react';
3
+
4
+ /** BPMN Node types */
5
+ export type AIWorkflowNodeType = 'start' | 'end' | 'task' | 'userTask' | 'serviceTask' | 'scriptTask' | 'businessRuleTask' | 'sendTask' | 'receiveTask' | 'manualTask' | 'gateway-exclusive' | 'gateway-parallel' | 'gateway-inclusive' | 'gateway-event' | 'subProcess' | 'callActivity' | 'event-intermediate' | 'event-timer' | 'event-message' | 'event-signal' | 'event-error' | 'event-escalation';
6
+ /** Workflow node */
7
+ export interface AIWorkflowNode {
8
+ id: string;
9
+ type: AIWorkflowNodeType;
10
+ label: string;
11
+ description?: string;
12
+ position?: {
13
+ x: number;
14
+ y: number;
15
+ };
16
+ data?: Record<string, unknown>;
17
+ assignee?: string;
18
+ dueDate?: string;
19
+ priority?: 'low' | 'medium' | 'high';
20
+ }
21
+ /** Workflow edge/connection */
22
+ export interface AIWorkflowEdge {
23
+ id: string;
24
+ source: string;
25
+ target: string;
26
+ label?: string;
27
+ condition?: string;
28
+ type?: 'default' | 'conditional' | 'error';
29
+ }
30
+ /** Lane/swimlane */
31
+ export interface AIWorkflowLane {
32
+ id: string;
33
+ name: string;
34
+ role?: string;
35
+ nodes: string[];
36
+ }
37
+ /** Generated workflow */
38
+ export interface AIWorkflowDefinition {
39
+ id: string;
40
+ name: string;
41
+ description?: string;
42
+ version?: string;
43
+ nodes: AIWorkflowNode[];
44
+ edges: AIWorkflowEdge[];
45
+ lanes?: AIWorkflowLane[];
46
+ variables?: Array<{
47
+ name: string;
48
+ type: string;
49
+ defaultValue?: unknown;
50
+ }>;
51
+ metadata?: Record<string, unknown>;
52
+ }
53
+ /** Workflow generation result */
54
+ export interface AIWorkflowResult {
55
+ workflow?: AIWorkflowDefinition;
56
+ rawResponse?: string;
57
+ error?: string;
58
+ latencyMs?: number;
59
+ suggestions?: string[];
60
+ }
61
+ /** Hook options */
62
+ export interface UseWorkflowDesignerAIOptions {
63
+ config?: NiceAIConfig;
64
+ context?: string;
65
+ existingRoles?: string[];
66
+ existingVariables?: string[];
67
+ onWorkflowGenerated?: (workflow: AIWorkflowDefinition) => void;
68
+ onError?: (error: string) => void;
69
+ }
70
+ export declare function useWorkflowDesignerAI(options?: UseWorkflowDesignerAIOptions): {
71
+ generateWorkflow: (description: string) => Promise<AIWorkflowResult>;
72
+ optimizeWorkflow: (workflow: AIWorkflowDefinition) => Promise<AIWorkflowResult>;
73
+ suggestNextStep: (workflow: AIWorkflowDefinition, afterNodeId: string) => Promise<AIWorkflowNode[]>;
74
+ validateWorkflow: (workflow: AIWorkflowDefinition) => Promise<string[]>;
75
+ loading: boolean;
76
+ lastResult: AIWorkflowResult | null;
77
+ history: {
78
+ request: string;
79
+ result: AIWorkflowResult;
80
+ }[];
81
+ clearResults: () => void;
82
+ abort: () => void;
83
+ isConfigured: boolean;
84
+ };
85
+ export interface NiceWorkflowDesignerAIProps {
86
+ /** AI configuration override */
87
+ config?: NiceAIConfig;
88
+ /** Context information */
89
+ context?: string;
90
+ /** Available roles */
91
+ roles?: string[];
92
+ /** Callback when workflow is generated */
93
+ onGenerate?: (workflow: AIWorkflowDefinition) => void;
94
+ /** Placeholder text */
95
+ placeholder?: string;
96
+ /** Show examples */
97
+ showExamples?: boolean;
98
+ /** Show preview */
99
+ showPreview?: boolean;
100
+ /** Custom class name */
101
+ className?: string;
102
+ /** Custom styles */
103
+ style?: React.CSSProperties;
104
+ /** Custom workflow renderer */
105
+ renderWorkflow?: (workflow: AIWorkflowDefinition) => ReactNode;
106
+ }
107
+ export declare function NiceWorkflowDesignerAI({ config, context, roles, onGenerate, placeholder, showExamples, showPreview, className, style, renderWorkflow, }: NiceWorkflowDesignerAIProps): import("react/jsx-runtime").JSX.Element;
108
+ //# sourceMappingURL=NiceWorkflowDesignerAI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NiceWorkflowDesignerAI.d.ts","sourceRoot":"","sources":["../src/NiceWorkflowDesignerAI.tsx"],"names":[],"mappings":"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"}