@voltius/plugin-types 0.38.1 → 0.39.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 (3) hide show
  1. package/index.d.ts +3 -0
  2. package/package.json +1 -1
  3. package/ui.d.ts +8 -0
package/index.d.ts CHANGED
@@ -1532,6 +1532,9 @@ export interface PluginManifest {
1532
1532
  * at build time when the manifest omits it. */
1533
1533
  minAppVersion?: string;
1534
1534
  description?: string;
1535
+ /** Iconify id (e.g. "lucide:cpu", "custom:docker") shown in the plugin list. Restricted to
1536
+ * host-bundled prefixes at render time (see `catalogIcon`); falls back to a puzzle icon. */
1537
+ icon?: string;
1535
1538
  permissions: string[];
1536
1539
  defaultEnabled?: boolean;
1537
1540
  /** Hidden in the plugin list on mobile (uses host-only resources, e.g. local fs). */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voltius/plugin-types",
3
- "version": "0.38.1",
3
+ "version": "0.39.0",
4
4
  "description": "TypeScript definitions for the Voltius plugin API",
5
5
  "types": "index.d.ts",
6
6
  "files": [
package/ui.d.ts CHANGED
@@ -5,6 +5,13 @@ declare module "@voltius/ui" {
5
5
  import type { PluginAPI, PluginSession } from "@voltius/plugin-types";
6
6
  export const Icon: ComponentType<{ icon: string; width?: number | string; className?: string }>;
7
7
  export const InfoTooltip: ComponentType<{ text: string; children?: ReactNode }>;
8
+ export const FormSelect: ComponentType<{
9
+ value: string;
10
+ options: { value: string; label: string }[];
11
+ onChange: (value: string) => void;
12
+ className?: string;
13
+ ariaLabel?: string;
14
+ }>;
8
15
  export const BottomSheet: ComponentType<{ title?: string; onClose: () => void; children?: ReactNode }>;
9
16
  export const MobileScreenHeader: ComponentType<{
10
17
  title: string;
@@ -13,6 +20,7 @@ declare module "@voltius/ui" {
13
20
  children?: ReactNode;
14
21
  }>;
15
22
  export function useAutosave<T>(value: T, save: (v: T) => void | Promise<void>, delayMs?: number): void;
23
+ export function useCopiedFlash(durationMs: number): { copied: boolean; flash: (persist?: boolean) => void };
16
24
  export function useT(api: PluginAPI): PluginAPI["i18n"]["t"];
17
25
  export function useSessionById(api: PluginAPI, sessionId: string): PluginSession | null;
18
26
  export function useActiveSession(api: PluginAPI | null): PluginSession | null;