import type { ResourceTemplate } from "./templates/types.js";
/**
 * The creation path the user selected on the picker screen.
 *
 * - `"scratch"` — start the wizard with empty fields
 * - `"template"` — start the wizard with template-provided data
 * - `"import"` — open the import dialog (handled by the consumer)
 */
export type CreationPath = {
    readonly kind: "scratch";
} | {
    readonly kind: "template";
    readonly data: Partial<unknown>;
} | {
    readonly kind: "import";
};
/** Props for {@link CreationPicker}. */
export interface CreationPickerProps<TData> {
    /** Label for the resource type (e.g. "agent", "MCP server"). Used in headings. */
    readonly resourceLabel: string;
    /** Available templates for the gallery view. */
    readonly templates: readonly ResourceTemplate<TData>[];
    /** Called when the user selects a creation path. */
    readonly onSelect: (path: CreationPath) => void;
    /** Additional CSS classes for the root container. */
    readonly className?: string;
}
/**
 * "Step 0" landing screen for resource creation flows.
 *
 * Presents three creation entry points as large option cards:
 * 1. **Start from scratch** — blank wizard
 * 2. **Browse templates** — opens the template gallery inline
 * 3. **Import from file** — triggers the import dialog
 *
 * When the user clicks "Browse templates", the picker transitions
 * to show the `TemplateGallery` inline with a back button. Selecting
 * a template emits `onSelect({ kind: "template", data })`.
 *
 * This component is SDK-first with zero Console dependencies. The
 * consumer (e.g. `AgentNewPage`) handles routing, the import dialog,
 * and mounting the wizard.
 *
 * @typeParam TData - The wizard data shape (e.g. `AgentWizardData`).
 *
 * @example
 * ```tsx
 * <CreationPicker
 *   resourceLabel="agent"
 *   templates={AGENT_TEMPLATES}
 *   onSelect={(path) => {
 *     if (path.kind === "scratch") startWizard();
 *     if (path.kind === "template") startWizard(path.data);
 *     if (path.kind === "import") openImportDialog();
 *   }}
 * />
 * ```
 */
export declare function CreationPicker<TData>({ resourceLabel, templates, onSelect, className, }: CreationPickerProps<TData>): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=CreationPicker.d.ts.map