import { type ThisComputerPlatform } from "@opengeni/sdk/this-computer"; import { type ReactNode } from "react"; import { type ThisComputerLabels } from "./labels.js"; import type { UseThisComputerResult } from "./use-this-computer.js"; export interface ThisComputerSetupProps { open: boolean; onOpenChange(open: boolean): void; /** From `useThisComputer` for the open workspace. */ computer: UseThisComputerResult; platform: ThisComputerPlatform; /** The app's name as System Settings lists it. */ productName: string; /** The app's icon, pictured in the System Settings row. */ appIcon?: string | null; /** The agent's mark, shown on the pictured computer (an avatar or logo). */ agentMark?: ReactNode; labels?: ThisComputerLabels; /** Where the dialog portals to; defaults to `document.body`. */ container?: HTMLElement | null; /** The person finished setting up (ready, permissions and all). */ onReady?(): void; } /** * Whether `ThisComputerSetup` is open. It opens by itself once when the * person left setup unfinished, e.g. when macOS restarted the app for a * permission, so they land back on the step they were on. */ export declare function useThisComputerSetupOpen(computer: UseThisComputerResult): [open: boolean, setOpen: (open: boolean) => void]; /** * Turning on "Use this computer", start to finish, in one dialog: what it * means, the one-time download, each macOS permission one at a time with a * picture of the switch to turn on, and "you're all set". Closing midway is * fine; the status pieces offer to finish later. */ export declare function ThisComputerSetup({ open, onOpenChange, computer, platform, productName: desktopProductName, appIcon: desktopAppIcon, agentMark, labels: given, container, onReady, }: ThisComputerSetupProps): import("react").JSX.Element;