@arcteninc/core 0.0.110 → 0.0.112

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 (84) hide show
  1. package/README.md +66 -53
  2. package/dist/components/ArctenAgent.d.ts +51 -0
  3. package/dist/components/ArctenAgent.d.ts.map +1 -0
  4. package/dist/components/ai-elements/prompt-input.d.ts +187 -0
  5. package/dist/components/ai-elements/prompt-input.d.ts.map +1 -0
  6. package/dist/components/ai-elements/reasoning.d.ts +17 -0
  7. package/dist/components/ai-elements/reasoning.d.ts.map +1 -0
  8. package/dist/components/ai-elements/response.d.ts +8 -0
  9. package/dist/components/ai-elements/response.d.ts.map +1 -0
  10. package/dist/components/ai-elements/shimmer.d.ts +10 -0
  11. package/dist/components/ai-elements/shimmer.d.ts.map +1 -0
  12. package/dist/components/citation-button.d.ts +14 -0
  13. package/dist/components/citation-button.d.ts.map +1 -0
  14. package/dist/components/citation-text-renderer.d.ts +31 -0
  15. package/dist/components/citation-text-renderer.d.ts.map +1 -0
  16. package/dist/components/secure-modals/EmailModal.d.ts +10 -0
  17. package/dist/components/secure-modals/EmailModal.d.ts.map +1 -0
  18. package/dist/components/secure-modals/FormModal.d.ts +20 -0
  19. package/dist/components/secure-modals/FormModal.d.ts.map +1 -0
  20. package/dist/components/secure-modals/PasswordModal.d.ts +10 -0
  21. package/dist/components/secure-modals/PasswordModal.d.ts.map +1 -0
  22. package/dist/components/secure-modals/PhoneModal.d.ts +10 -0
  23. package/dist/components/secure-modals/PhoneModal.d.ts.map +1 -0
  24. package/dist/components/secure-modals/PinModal.d.ts +11 -0
  25. package/dist/components/secure-modals/PinModal.d.ts.map +1 -0
  26. package/dist/components/secure-modals/SecureModalProvider.d.ts +13 -0
  27. package/dist/components/secure-modals/SecureModalProvider.d.ts.map +1 -0
  28. package/dist/components/secure-modals/TextModal.d.ts +11 -0
  29. package/dist/components/secure-modals/TextModal.d.ts.map +1 -0
  30. package/dist/components/secure-modals/index.d.ts +10 -0
  31. package/dist/components/secure-modals/index.d.ts.map +1 -0
  32. package/dist/components/secure-modals/types.d.ts +34 -0
  33. package/dist/components/secure-modals/types.d.ts.map +1 -0
  34. package/dist/components/tool-call-approval.d.ts +9 -0
  35. package/dist/components/tool-call-approval.d.ts.map +1 -0
  36. package/dist/components/tool-call-result.d.ts +8 -0
  37. package/dist/components/tool-call-result.d.ts.map +1 -0
  38. package/dist/components/ui/autotextarea.d.ts +19 -0
  39. package/dist/components/ui/autotextarea.d.ts.map +1 -0
  40. package/dist/components/ui/badge.d.ts +10 -0
  41. package/dist/components/ui/badge.d.ts.map +1 -0
  42. package/dist/components/ui/button.d.ts +14 -0
  43. package/dist/components/ui/button.d.ts.map +1 -0
  44. package/dist/components/ui/collapsible.d.ts +6 -0
  45. package/dist/components/ui/collapsible.d.ts.map +1 -0
  46. package/dist/components/ui/command.d.ts +19 -0
  47. package/dist/components/ui/command.d.ts.map +1 -0
  48. package/dist/components/ui/dialog.d.ts +16 -0
  49. package/dist/components/ui/dialog.d.ts.map +1 -0
  50. package/dist/components/ui/dropdown-menu.d.ts +26 -0
  51. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  52. package/dist/components/ui/hover-card.d.ts +7 -0
  53. package/dist/components/ui/hover-card.d.ts.map +1 -0
  54. package/dist/components/ui/input-group.d.ts +17 -0
  55. package/dist/components/ui/input-group.d.ts.map +1 -0
  56. package/dist/components/ui/input.d.ts +4 -0
  57. package/dist/components/ui/input.d.ts.map +1 -0
  58. package/dist/components/ui/kbd.d.ts +4 -0
  59. package/dist/components/ui/kbd.d.ts.map +1 -0
  60. package/dist/components/ui/select.d.ts +16 -0
  61. package/dist/components/ui/select.d.ts.map +1 -0
  62. package/dist/components/ui/textarea.d.ts +4 -0
  63. package/dist/components/ui/textarea.d.ts.map +1 -0
  64. package/dist/components/ui/tooltip.d.ts +8 -0
  65. package/dist/components/ui/tooltip.d.ts.map +1 -0
  66. package/dist/core.css +1 -0
  67. package/dist/index.cjs +16 -3
  68. package/dist/index.d.ts +7 -3
  69. package/dist/index.d.ts.map +1 -1
  70. package/dist/index.mjs +8681 -452
  71. package/dist/lib/useAgent.d.ts +2 -1
  72. package/dist/lib/useAgent.d.ts.map +1 -1
  73. package/dist/types/tool-description.d.ts +0 -1
  74. package/dist/types/tool-description.d.ts.map +1 -1
  75. package/dist/types/use-agent.d.ts +50 -2
  76. package/dist/types/use-agent.d.ts.map +1 -1
  77. package/dist/utils/form-generator.d.ts +29 -0
  78. package/dist/utils/form-generator.d.ts.map +1 -0
  79. package/dist/utils/secure-param-detector.d.ts +26 -0
  80. package/dist/utils/secure-param-detector.d.ts.map +1 -0
  81. package/package.json +26 -2
  82. package/scripts/cli-extract-types-auto-wrapper.cjs +1 -0
  83. package/scripts/cli-extract-types-auto.js +1 -0
  84. package/scripts/cli-extract-types-auto.ts +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @arcteninc/core
2
2
 
3
- Core hooks, utilities, and types for building AI-powered agent interfaces. This package contains the headless functionality - for UI components, see `@arcteninc/ui`.
3
+ React component library for building AI-powered agent interfaces.
4
4
 
5
5
  ## Installation
6
6
 
@@ -14,85 +14,92 @@ pnpm add @arcteninc/core
14
14
  bun add @arcteninc/core
15
15
  ```
16
16
 
17
- ## Package Split
17
+ ## Requirements
18
18
 
19
- This package has been split into two packages:
19
+ **Tailwind CSS is only required if you're using the visual components** (like `<ArctenAgent>`). If you're only using the headless hooks (like `useAgent`), Tailwind is not needed.
20
20
 
21
- - **@arcteninc/core** (this package): Hooks (`useAgent`), utilities, types, and CLI tools
22
- - **@arcteninc/ui**: React components (`ArctenAgent`) and UI primitives
21
+ The UI components use Tailwind utility classes for styling.
23
22
 
24
- This split allows you to use only the core functionality without the UI bundle if you're building a custom interface.
23
+ ### Setting up Tailwind CSS
25
24
 
26
- ## Usage
25
+ 1. Install Tailwind CSS (if not already installed):
27
26
 
28
- ### Using the `useAgent` Hook
27
+ ```bash
28
+ npm install -D tailwindcss
29
+ npx tailwindcss init
30
+ ```
29
31
 
30
- ```tsx
31
- import { useAgent } from "@arcteninc/core";
32
-
33
- function MyCustomAgent() {
34
- const {
35
- messages,
36
- sendMessage,
37
- status,
38
- error,
39
- stop,
40
- } = useAgent({
41
- apiBaseUrl: "https://api.arcten.com",
42
- tokenEndpoint: "/api/arcten/token",
43
- user: { id: "user-123" },
44
- tools: [/* your tools */],
45
- });
46
-
47
- // Build your custom UI using the hook
48
- return (
49
- <div>
50
- {messages.map((msg) => (
51
- <div key={msg.id}>{msg.content}</div>
52
- ))}
53
- <input
54
- onKeyDown={(e) => {
55
- if (e.key === "Enter") {
56
- sendMessage({ text: e.target.value });
57
- }
58
- }}
59
- />
60
- </div>
61
- );
32
+ 2. Configure Tailwind to scan the library's components by adding the package path to your `content` array in `tailwind.config.js`:
33
+
34
+ ```js
35
+ /** @type {import('tailwindcss').Config} */
36
+ module.exports = {
37
+ content: [
38
+ "./src/**/*.{js,ts,jsx,tsx,mdx}",
39
+ // Add this line to include @arcteninc/core components:
40
+ "./node_modules/@arcteninc/core/dist/**/*.{js,mjs}"
41
+ ],
42
+ theme: {
43
+ extend: {},
44
+ },
45
+ plugins: [],
62
46
  }
63
47
  ```
64
48
 
65
- ### Using the UI Component
49
+ 3. Include Tailwind directives in your CSS:
66
50
 
67
- If you want the pre-built UI component, install and use `@arcteninc/ui`:
68
-
69
- ```bash
70
- npm install @arcteninc/ui
51
+ ```css
52
+ @tailwind base;
53
+ @tailwind components;
54
+ @tailwind utilities;
71
55
  ```
72
56
 
57
+ ## Usage
58
+
59
+ ### Complete Example
60
+
73
61
  ```tsx
74
- import { ArctenAgent } from "@arcteninc/ui";
75
- import "@arcteninc/ui/styles";
62
+ // 1. Import the component
63
+ import { ArctenAgent } from "@arcteninc/core";
64
+
65
+ // 2. Import the styles (REQUIRED - styles are NOT auto-applied)
66
+ import "@arcteninc/core/styles";
76
67
 
77
68
  function App() {
78
69
  return (
79
70
  <ArctenAgent
80
- apiBaseUrl="https://api.arcten.com"
71
+ title="My AI Assistant"
81
72
  tokenEndpoint="/api/arcten/token"
82
- user={{ id: "user-123" }}
83
73
  />
84
74
  );
85
75
  }
86
76
  ```
87
77
 
88
- ## CLI Tools
78
+ **⚠️ Important:** Importing the component does NOT automatically include styles. You must import the CSS separately (see below).
89
79
 
90
- This package includes CLI tools for type extraction:
80
+ ### Import Styles
91
81
 
92
- ```bash
93
- npx @arcteninc/core arcten-extract-types
82
+ **Required:** You MUST import the CSS styles separately for the components to display correctly. The styles are pre-compiled and self-contained - they work regardless of whether you're using Tailwind CSS in your project.
83
+
84
+ #### Option 1: Import in your CSS file (Recommended)
85
+
86
+ ```css
87
+ /* In your globals.css or main CSS file */
88
+ @import "@arcteninc/core/styles";
94
89
  ```
95
90
 
91
+ #### Option 2: Import in your JavaScript/TypeScript
92
+
93
+ ```tsx
94
+ // In your main entry file (e.g., app.tsx, _app.tsx, layout.tsx)
95
+ import "@arcteninc/core/styles";
96
+ ```
97
+
98
+ #### Option 3: Import via CDN (if using unpkg or similar)
99
+
100
+ ```html
101
+ <link rel="stylesheet" href="https://unpkg.com/@arcteninc/core@latest/dist/core.css" />
102
+ ```
96
103
  ## Development
97
104
 
98
105
  To install dependencies:
@@ -112,3 +119,9 @@ To watch for changes:
112
119
  ```bash
113
120
  bun run dev
114
121
  ```
122
+
123
+ ## Notes
124
+
125
+ - The CSS is pre-compiled and includes all necessary Tailwind styles
126
+ - You don't need to configure Tailwind CSS in your project to use this package
127
+ - The styles are self-contained and won't conflict with your existing styles
@@ -0,0 +1,51 @@
1
+ import { SensitiveParamConfig } from '../types/use-agent';
2
+ export type ToolFunction = (...args: any[]) => any;
3
+ export interface RagConfig {
4
+ enabled?: boolean;
5
+ organizationId?: string;
6
+ autoExecute?: boolean;
7
+ filters?: {
8
+ docIds?: string[];
9
+ pageIds?: string[];
10
+ site?: string;
11
+ lang?: string;
12
+ tags?: string[];
13
+ };
14
+ }
15
+ export interface ArctenAgentProps {
16
+ theme?: "light" | "dark" | "auto";
17
+ layout?: "sidebar";
18
+ model?: "auto" | "anthropic:sonnet-4.5" | "groq:oss-120b" | "openai:gpt-5";
19
+ animated?: boolean;
20
+ title?: string;
21
+ logo?: React.ReactNode;
22
+ defaultWidth?: number;
23
+ minWidth?: number;
24
+ maxWidth?: number;
25
+ initiallyExpanded?: boolean;
26
+ tools?: ToolFunction[];
27
+ safeTools?: ToolFunction[];
28
+ toolMetadata?: any;
29
+ /**
30
+ * @deprecated Configure prompts from the dashboard/agents UI. This prop is ignored.
31
+ */
32
+ systemPrompt?: string;
33
+ agentId?: string;
34
+ agentName?: string;
35
+ tokenEndpoint?: string;
36
+ apiBaseUrl?: string;
37
+ user?: {
38
+ id: string;
39
+ [key: string]: any;
40
+ };
41
+ state?: Record<string, any>;
42
+ onStateChange?: (state: Record<string, any>) => void;
43
+ allowStateEdits?: boolean;
44
+ sources?: string[];
45
+ ragConfig?: RagConfig;
46
+ showCitations?: boolean;
47
+ sensitiveParams?: Record<string, SensitiveParamConfig>;
48
+ autoDetectSensitive?: boolean;
49
+ }
50
+ export declare function ArctenAgent(props: ArctenAgentProps): import("react/jsx-runtime").JSX.Element;
51
+ //# sourceMappingURL=ArctenAgent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArctenAgent.d.ts","sourceRoot":"","sources":["../../src/components/ArctenAgent.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAkX/D,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAEnD,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,sBAAsB,GAAG,eAAe,GAAG,cAAc,CAAC;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAE1C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACrD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACvD,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAkvED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAMlD"}
@@ -0,0 +1,187 @@
1
+ import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator } from '../../components/ui/command';
2
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem } from '../../components/ui/dropdown-menu';
3
+ import { HoverCard, HoverCardContent, HoverCardTrigger } from '../../components/ui/hover-card';
4
+ import { InputGroupAddon, InputGroupButton, InputGroupTextarea } from '../../components/ui/input-group';
5
+ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../../components/ui/select';
6
+ import { ChatStatus, FileUIPart } from 'ai';
7
+ import { ComponentProps, FormEvent, HTMLAttributes, PropsWithChildren, ReactNode, RefObject } from 'react';
8
+ export type AttachmentsContext = {
9
+ files: (FileUIPart & {
10
+ id: string;
11
+ })[];
12
+ add: (files: File[] | FileList) => void;
13
+ remove: (id: string) => void;
14
+ clear: () => void;
15
+ openFileDialog: () => void;
16
+ fileInputRef: RefObject<HTMLInputElement | null>;
17
+ };
18
+ export type TextInputContext = {
19
+ value: string;
20
+ setInput: (v: string) => void;
21
+ clear: () => void;
22
+ };
23
+ export type PromptInputControllerProps = {
24
+ textInput: TextInputContext;
25
+ attachments: AttachmentsContext;
26
+ /** INTERNAL: Allows PromptInput to register its file textInput + "open" callback */
27
+ __registerFileInput: (ref: RefObject<HTMLInputElement | null>, open: () => void) => void;
28
+ };
29
+ export declare const usePromptInputController: () => PromptInputControllerProps;
30
+ export declare const useProviderAttachments: () => AttachmentsContext;
31
+ export type PromptInputProviderProps = PropsWithChildren<{
32
+ initialInput?: string;
33
+ }>;
34
+ /**
35
+ * Optional global provider that lifts PromptInput state outside of PromptInput.
36
+ * If you don't use it, PromptInput stays fully self-managed.
37
+ */
38
+ export declare function PromptInputProvider({ initialInput: initialTextInput, children, }: PromptInputProviderProps): import("react/jsx-runtime").JSX.Element;
39
+ export declare const usePromptInputAttachments: () => AttachmentsContext;
40
+ export type PromptInputAttachmentProps = HTMLAttributes<HTMLDivElement> & {
41
+ data: FileUIPart & {
42
+ id: string;
43
+ };
44
+ className?: string;
45
+ };
46
+ export declare function PromptInputAttachment({ data, className, ...props }: PromptInputAttachmentProps): import("react/jsx-runtime").JSX.Element;
47
+ export type PromptInputAttachmentsProps = Omit<HTMLAttributes<HTMLDivElement>, "children"> & {
48
+ children: (attachment: FileUIPart & {
49
+ id: string;
50
+ }) => ReactNode;
51
+ };
52
+ export declare function PromptInputAttachments({ children, }: PromptInputAttachmentsProps): import("react/jsx-runtime").JSX.Element[] | null;
53
+ export type PromptInputActionAddAttachmentsProps = ComponentProps<typeof DropdownMenuItem> & {
54
+ label?: string;
55
+ };
56
+ export declare const PromptInputActionAddAttachments: ({ label, ...props }: PromptInputActionAddAttachmentsProps) => import("react/jsx-runtime").JSX.Element;
57
+ export type PromptInputMessage = {
58
+ text?: string;
59
+ files?: FileUIPart[];
60
+ };
61
+ export type PromptInputProps = Omit<HTMLAttributes<HTMLFormElement>, "onSubmit" | "onError"> & {
62
+ accept?: string;
63
+ multiple?: boolean;
64
+ globalDrop?: boolean;
65
+ syncHiddenInput?: boolean;
66
+ maxFiles?: number;
67
+ maxFileSize?: number;
68
+ onError?: (err: {
69
+ code: "max_files" | "max_file_size" | "accept";
70
+ message: string;
71
+ }) => void;
72
+ onSubmit: (message: PromptInputMessage, event: FormEvent<HTMLFormElement>) => void | Promise<void>;
73
+ };
74
+ export declare const PromptInput: ({ className, accept, multiple, globalDrop, syncHiddenInput, maxFiles, maxFileSize, onError, onSubmit, children, ...props }: PromptInputProps) => import("react/jsx-runtime").JSX.Element;
75
+ export type PromptInputBodyProps = HTMLAttributes<HTMLDivElement>;
76
+ export declare const PromptInputBody: ({ className, ...props }: PromptInputBodyProps) => import("react/jsx-runtime").JSX.Element;
77
+ export type PromptInputTextareaProps = ComponentProps<typeof InputGroupTextarea>;
78
+ export declare const PromptInputTextarea: ({ onChange, className, placeholder, ...props }: PromptInputTextareaProps) => import("react/jsx-runtime").JSX.Element;
79
+ export type PromptInputHeaderProps = Omit<ComponentProps<typeof InputGroupAddon>, "align">;
80
+ export declare const PromptInputHeader: ({ className, ...props }: PromptInputHeaderProps) => import("react/jsx-runtime").JSX.Element;
81
+ export type PromptInputFooterProps = Omit<ComponentProps<typeof InputGroupAddon>, "align">;
82
+ export declare const PromptInputFooter: ({ className, ...props }: PromptInputFooterProps) => import("react/jsx-runtime").JSX.Element;
83
+ export type PromptInputToolsProps = HTMLAttributes<HTMLDivElement>;
84
+ export declare const PromptInputTools: ({ className, ...props }: PromptInputToolsProps) => import("react/jsx-runtime").JSX.Element;
85
+ export type PromptInputButtonProps = ComponentProps<typeof InputGroupButton>;
86
+ export declare const PromptInputButton: ({ variant, className, size, ...props }: PromptInputButtonProps) => import("react/jsx-runtime").JSX.Element;
87
+ export type PromptInputActionMenuProps = ComponentProps<typeof DropdownMenu>;
88
+ export declare const PromptInputActionMenu: (props: PromptInputActionMenuProps) => import("react/jsx-runtime").JSX.Element;
89
+ export type PromptInputActionMenuTriggerProps = PromptInputButtonProps;
90
+ export declare const PromptInputActionMenuTrigger: ({ className, children, ...props }: PromptInputActionMenuTriggerProps) => import("react/jsx-runtime").JSX.Element;
91
+ export type PromptInputActionMenuContentProps = ComponentProps<typeof DropdownMenuContent>;
92
+ export declare const PromptInputActionMenuContent: ({ className, ...props }: PromptInputActionMenuContentProps) => import("react/jsx-runtime").JSX.Element;
93
+ export type PromptInputActionMenuItemProps = ComponentProps<typeof DropdownMenuItem>;
94
+ export declare const PromptInputActionMenuItem: ({ className, ...props }: PromptInputActionMenuItemProps) => import("react/jsx-runtime").JSX.Element;
95
+ export type PromptInputSubmitProps = ComponentProps<typeof InputGroupButton> & {
96
+ status?: ChatStatus;
97
+ };
98
+ export declare const PromptInputSubmit: ({ className, variant, size, status, children, ...props }: PromptInputSubmitProps) => import("react/jsx-runtime").JSX.Element;
99
+ interface SpeechRecognition extends EventTarget {
100
+ continuous: boolean;
101
+ interimResults: boolean;
102
+ lang: string;
103
+ start(): void;
104
+ stop(): void;
105
+ onstart: ((this: SpeechRecognition, ev: Event) => any) | null;
106
+ onend: ((this: SpeechRecognition, ev: Event) => any) | null;
107
+ onresult: ((this: SpeechRecognition, ev: SpeechRecognitionEvent) => any) | null;
108
+ onerror: ((this: SpeechRecognition, ev: SpeechRecognitionErrorEvent) => any) | null;
109
+ }
110
+ interface SpeechRecognitionEvent extends Event {
111
+ results: SpeechRecognitionResultList;
112
+ }
113
+ type SpeechRecognitionResultList = {
114
+ readonly length: number;
115
+ item(index: number): SpeechRecognitionResult;
116
+ [index: number]: SpeechRecognitionResult;
117
+ };
118
+ type SpeechRecognitionResult = {
119
+ readonly length: number;
120
+ item(index: number): SpeechRecognitionAlternative;
121
+ [index: number]: SpeechRecognitionAlternative;
122
+ isFinal: boolean;
123
+ };
124
+ type SpeechRecognitionAlternative = {
125
+ transcript: string;
126
+ confidence: number;
127
+ };
128
+ interface SpeechRecognitionErrorEvent extends Event {
129
+ error: string;
130
+ }
131
+ declare global {
132
+ interface Window {
133
+ SpeechRecognition: {
134
+ new (): SpeechRecognition;
135
+ };
136
+ webkitSpeechRecognition: {
137
+ new (): SpeechRecognition;
138
+ };
139
+ }
140
+ }
141
+ export type PromptInputSpeechButtonProps = ComponentProps<typeof PromptInputButton> & {
142
+ textareaRef?: RefObject<HTMLTextAreaElement | null>;
143
+ onTranscriptionChange?: (text: string) => void;
144
+ };
145
+ export declare const PromptInputSpeechButton: ({ className, textareaRef, onTranscriptionChange, ...props }: PromptInputSpeechButtonProps) => import("react/jsx-runtime").JSX.Element;
146
+ export type PromptInputModelSelectProps = ComponentProps<typeof Select>;
147
+ export declare const PromptInputModelSelect: (props: PromptInputModelSelectProps) => import("react/jsx-runtime").JSX.Element;
148
+ export type PromptInputModelSelectTriggerProps = ComponentProps<typeof SelectTrigger>;
149
+ export declare const PromptInputModelSelectTrigger: ({ className, ...props }: PromptInputModelSelectTriggerProps) => import("react/jsx-runtime").JSX.Element;
150
+ export type PromptInputModelSelectContentProps = ComponentProps<typeof SelectContent>;
151
+ export declare const PromptInputModelSelectContent: ({ className, ...props }: PromptInputModelSelectContentProps) => import("react/jsx-runtime").JSX.Element;
152
+ export type PromptInputModelSelectItemProps = ComponentProps<typeof SelectItem>;
153
+ export declare const PromptInputModelSelectItem: ({ className, ...props }: PromptInputModelSelectItemProps) => import("react/jsx-runtime").JSX.Element;
154
+ export type PromptInputModelSelectValueProps = ComponentProps<typeof SelectValue>;
155
+ export declare const PromptInputModelSelectValue: ({ className, ...props }: PromptInputModelSelectValueProps) => import("react/jsx-runtime").JSX.Element;
156
+ export type PromptInputHoverCardProps = ComponentProps<typeof HoverCard>;
157
+ export declare const PromptInputHoverCard: ({ openDelay, closeDelay, ...props }: PromptInputHoverCardProps) => import("react/jsx-runtime").JSX.Element;
158
+ export type PromptInputHoverCardTriggerProps = ComponentProps<typeof HoverCardTrigger>;
159
+ export declare const PromptInputHoverCardTrigger: (props: PromptInputHoverCardTriggerProps) => import("react/jsx-runtime").JSX.Element;
160
+ export type PromptInputHoverCardContentProps = ComponentProps<typeof HoverCardContent>;
161
+ export declare const PromptInputHoverCardContent: ({ align, ...props }: PromptInputHoverCardContentProps) => import("react/jsx-runtime").JSX.Element;
162
+ export type PromptInputTabsListProps = HTMLAttributes<HTMLDivElement>;
163
+ export declare const PromptInputTabsList: ({ className, ...props }: PromptInputTabsListProps) => import("react/jsx-runtime").JSX.Element;
164
+ export type PromptInputTabProps = HTMLAttributes<HTMLDivElement>;
165
+ export declare const PromptInputTab: ({ className, ...props }: PromptInputTabProps) => import("react/jsx-runtime").JSX.Element;
166
+ export type PromptInputTabLabelProps = HTMLAttributes<HTMLHeadingElement>;
167
+ export declare const PromptInputTabLabel: ({ className, ...props }: PromptInputTabLabelProps) => import("react/jsx-runtime").JSX.Element;
168
+ export type PromptInputTabBodyProps = HTMLAttributes<HTMLDivElement>;
169
+ export declare const PromptInputTabBody: ({ className, ...props }: PromptInputTabBodyProps) => import("react/jsx-runtime").JSX.Element;
170
+ export type PromptInputTabItemProps = HTMLAttributes<HTMLDivElement>;
171
+ export declare const PromptInputTabItem: ({ className, ...props }: PromptInputTabItemProps) => import("react/jsx-runtime").JSX.Element;
172
+ export type PromptInputCommandProps = ComponentProps<typeof Command>;
173
+ export declare const PromptInputCommand: ({ className, ...props }: PromptInputCommandProps) => import("react/jsx-runtime").JSX.Element;
174
+ export type PromptInputCommandInputProps = ComponentProps<typeof CommandInput>;
175
+ export declare const PromptInputCommandInput: ({ className, ...props }: PromptInputCommandInputProps) => import("react/jsx-runtime").JSX.Element;
176
+ export type PromptInputCommandListProps = ComponentProps<typeof CommandList>;
177
+ export declare const PromptInputCommandList: ({ className, ...props }: PromptInputCommandListProps) => import("react/jsx-runtime").JSX.Element;
178
+ export type PromptInputCommandEmptyProps = ComponentProps<typeof CommandEmpty>;
179
+ export declare const PromptInputCommandEmpty: ({ className, ...props }: PromptInputCommandEmptyProps) => import("react/jsx-runtime").JSX.Element;
180
+ export type PromptInputCommandGroupProps = ComponentProps<typeof CommandGroup>;
181
+ export declare const PromptInputCommandGroup: ({ className, ...props }: PromptInputCommandGroupProps) => import("react/jsx-runtime").JSX.Element;
182
+ export type PromptInputCommandItemProps = ComponentProps<typeof CommandItem>;
183
+ export declare const PromptInputCommandItem: ({ className, ...props }: PromptInputCommandItemProps) => import("react/jsx-runtime").JSX.Element;
184
+ export type PromptInputCommandSeparatorProps = ComponentProps<typeof CommandSeparator>;
185
+ export declare const PromptInputCommandSeparator: ({ className, ...props }: PromptInputCommandSeparatorProps) => import("react/jsx-runtime").JSX.Element;
186
+ export {};
187
+ //# sourceMappingURL=prompt-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-input.d.ts","sourceRoot":"","sources":["../../../src/components/ai-elements/prompt-input.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../ui/collapsible';
2
+ import { ComponentProps } from 'react';
3
+ export type ReasoningProps = ComponentProps<typeof Collapsible> & {
4
+ isStreaming?: boolean;
5
+ open?: boolean;
6
+ defaultOpen?: boolean;
7
+ onOpenChange?: (open: boolean) => void;
8
+ duration?: number;
9
+ };
10
+ export declare const Reasoning: import('react').MemoExoticComponent<({ className, isStreaming, open, defaultOpen, onOpenChange, duration: durationProp, children, ...props }: ReasoningProps) => import("react/jsx-runtime").JSX.Element>;
11
+ export type ReasoningTriggerProps = ComponentProps<typeof CollapsibleTrigger>;
12
+ export declare const ReasoningTrigger: import('react').MemoExoticComponent<({ className, children, ...props }: ReasoningTriggerProps) => import("react/jsx-runtime").JSX.Element>;
13
+ export type ReasoningContentProps = ComponentProps<typeof CollapsibleContent> & {
14
+ children: string;
15
+ };
16
+ export declare const ReasoningContent: import('react').MemoExoticComponent<({ className, children, ...props }: ReasoningContentProps) => import("react/jsx-runtime").JSX.Element>;
17
+ //# sourceMappingURL=reasoning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning.d.ts","sourceRoot":"","sources":["../../../src/components/ai-elements/reasoning.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAsB5C,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,WAAW,CAAC,GAAG;IAChE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAKF,eAAO,MAAM,SAAS,gJAUjB,cAAc,6CA0DlB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAY9E,eAAO,MAAM,gBAAgB,0EACS,qBAAqB,6CA0B1D,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAChD,OAAO,kBAAkB,CAC1B,GAAG;IACF,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,gBAAgB,0EACS,qBAAqB,6CAY1D,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ComponentProps, ComponentType } from 'react';
2
+ type StreamdownType = ComponentType<any>;
3
+ type ResponseProps = ComponentProps<StreamdownType> & {
4
+ className?: string;
5
+ };
6
+ export declare const Response: import('react').MemoExoticComponent<({ className, ...props }: ResponseProps) => import("react/jsx-runtime").JSX.Element | null>;
7
+ export {};
8
+ //# sourceMappingURL=response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/components/ai-elements/response.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAwB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAOtF,KAAK,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AACzC,KAAK,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7E,eAAO,MAAM,QAAQ,gEACO,aAAa,oDAmBxC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { ElementType } from 'react';
2
+ export type TextShimmerProps = {
3
+ children: string;
4
+ as?: ElementType;
5
+ className?: string;
6
+ duration?: number;
7
+ spread?: number;
8
+ };
9
+ export declare const Shimmer: import('react').MemoExoticComponent<({ children, as: Component, className, duration, spread, }: TextShimmerProps) => import("react/jsx-runtime").JSX.Element>;
10
+ //# sourceMappingURL=shimmer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shimmer.d.ts","sourceRoot":"","sources":["../../../src/components/ai-elements/shimmer.tsx"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,WAAW,EAIjB,MAAM,OAAO,CAAC;AAEf,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AA6CF,eAAO,MAAM,OAAO,kGArCjB,gBAAgB,6CAqC0B,CAAC"}
@@ -0,0 +1,14 @@
1
+ interface CitationSource {
2
+ number: number;
3
+ url: string;
4
+ domain: string;
5
+ title?: string;
6
+ }
7
+ interface CitationButtonProps {
8
+ sources: CitationSource[];
9
+ citationNumber: number;
10
+ className?: string;
11
+ }
12
+ export declare function CitationButton({ sources, citationNumber, className }: CitationButtonProps): import("react/jsx-runtime").JSX.Element | null;
13
+ export {};
14
+ //# sourceMappingURL=citation-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"citation-button.d.ts","sourceRoot":"","sources":["../../src/components/citation-button.tsx"],"names":[],"mappings":"AAGA,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,mBAAmB;IAC3B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAOD,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,mBAAmB,kDAgFzF"}
@@ -0,0 +1,31 @@
1
+ import { ComponentType } from 'react';
2
+ interface CitationData {
3
+ number: number;
4
+ url: string;
5
+ }
6
+ interface GroupedCitation {
7
+ url: string;
8
+ baseUrl: string;
9
+ numbers: number[];
10
+ anchor?: string;
11
+ title?: string;
12
+ }
13
+ interface CitationTextRendererProps {
14
+ text: string;
15
+ citations: CitationData[];
16
+ citationMap: Map<number, string>;
17
+ groupedCitations?: GroupedCitation[];
18
+ referencesText?: string;
19
+ ResponseComponent: ComponentType<any>;
20
+ className?: string;
21
+ showCitations?: boolean;
22
+ showReferences?: boolean;
23
+ }
24
+ /**
25
+ * Renders markdown text using ResponseComponent (Streamdown) and then
26
+ * replaces citation placeholders with CitationButton React components.
27
+ * Uses portals to inject React components without createRoot.
28
+ */
29
+ export declare function CitationTextRenderer({ text, citations, citationMap, groupedCitations, referencesText, ResponseComponent, className, showCitations, showReferences, }: CitationTextRendererProps): import("react/jsx-runtime").JSX.Element;
30
+ export {};
31
+ //# sourceMappingURL=citation-text-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"citation-text-renderer.d.ts","sourceRoot":"","sources":["../../src/components/citation-text-renderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAKxE,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED,UAAU,eAAe;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,yBAAyB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,EACJ,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,aAAoB,EACpB,cAAqB,GACtB,EAAE,yBAAyB,2CAiT3B"}
@@ -0,0 +1,10 @@
1
+ interface EmailModalProps {
2
+ isOpen: boolean;
3
+ title?: string;
4
+ description?: string;
5
+ placeholder?: string;
6
+ onComplete: (value: string | null) => void;
7
+ }
8
+ export declare function EmailModal({ isOpen, title, description, placeholder, onComplete, }: EmailModalProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=EmailModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmailModal.d.ts","sourceRoot":"","sources":["../../../src/components/secure-modals/EmailModal.tsx"],"names":[],"mappings":"AAMA,UAAU,eAAe;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,KAAwB,EACxB,WAA+C,EAC/C,WAAsC,EACtC,UAAU,GACX,EAAE,eAAe,2CAuFjB"}
@@ -0,0 +1,20 @@
1
+ export interface FormField {
2
+ name: string;
3
+ type: 'text' | 'password' | 'email' | 'phone' | 'pin' | 'ssn' | 'creditCard';
4
+ label: string;
5
+ placeholder?: string;
6
+ required?: boolean;
7
+ value?: string;
8
+ validation?: (value: string) => string | null;
9
+ }
10
+ export interface FormModalProps {
11
+ isOpen: boolean;
12
+ title: string;
13
+ description?: string;
14
+ fields: FormField[];
15
+ onComplete: (values: Record<string, string> | null) => void;
16
+ submitText?: string;
17
+ cancelText?: string;
18
+ }
19
+ export declare function FormModal({ isOpen, title, description, fields, onComplete, submitText, cancelText }: FormModalProps): import("react/jsx-runtime").JSX.Element;
20
+ //# sourceMappingURL=FormModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormModal.d.ts","sourceRoot":"","sources":["../../../src/components/secure-modals/FormModal.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,YAAY,CAAC;IAC7E,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC/C;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,WAAW,EACX,MAAM,EACN,UAAU,EACV,UAAqB,EACrB,UAAqB,EACtB,EAAE,cAAc,2CAsRhB"}
@@ -0,0 +1,10 @@
1
+ interface PasswordModalProps {
2
+ isOpen: boolean;
3
+ title?: string;
4
+ description?: string;
5
+ placeholder?: string;
6
+ onComplete: (value: string | null) => void;
7
+ }
8
+ export declare function PasswordModal({ isOpen, title, description, placeholder, onComplete, }: PasswordModalProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=PasswordModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasswordModal.d.ts","sourceRoot":"","sources":["../../../src/components/secure-modals/PasswordModal.tsx"],"names":[],"mappings":"AAMA,UAAU,kBAAkB;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,KAA2B,EAC3B,WAAsD,EACtD,WAAiC,EACjC,UAAU,GACX,EAAE,kBAAkB,2CAyEpB"}
@@ -0,0 +1,10 @@
1
+ interface PhoneModalProps {
2
+ isOpen: boolean;
3
+ title?: string;
4
+ description?: string;
5
+ placeholder?: string;
6
+ onComplete: (value: string | null) => void;
7
+ }
8
+ export declare function PhoneModal({ isOpen, title, description, placeholder, onComplete, }: PhoneModalProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=PhoneModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PhoneModal.d.ts","sourceRoot":"","sources":["../../../src/components/secure-modals/PhoneModal.tsx"],"names":[],"mappings":"AAMA,UAAU,eAAe;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,KAA+B,EAC/B,WAA8C,EAC9C,WAAqC,EACrC,UAAU,GACX,EAAE,eAAe,2CA0GjB"}
@@ -0,0 +1,11 @@
1
+ interface PinModalProps {
2
+ isOpen: boolean;
3
+ title?: string;
4
+ description?: string;
5
+ placeholder?: string;
6
+ length?: number;
7
+ onComplete: (value: string | null) => void;
8
+ }
9
+ export declare function PinModal({ isOpen, title, description, placeholder, length, onComplete, }: PinModalProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=PinModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PinModal.d.ts","sourceRoot":"","sources":["../../../src/components/secure-modals/PinModal.tsx"],"names":[],"mappings":"AAMA,UAAU,aAAa;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,KAAsB,EACtB,WAAqC,EACrC,WAA4B,EAC5B,MAAU,EACV,UAAU,GACX,EAAE,aAAa,2CA4Ef"}