import { type RegistryConfig } from "#compiled/shadcn-registry/index.js"; import { z } from "#compiled/zod/index.js"; import { type Prompter } from "#setup/prompter.js"; import type { AddCommandOptions, RegistryCommandLogger } from "./registry.js"; import type { RegistrySetupCommand } from "./registry-setup-command.js"; export declare const RegistryPackageComponentSchema: z.ZodObject<{ item: z.ZodString; label: z.ZodString; description: z.ZodOptional; default: z.ZodDefault; }, z.core.$strip>; export type RegistryPackageComponent = z.infer; interface PackageMetadata { requires?: string; setup?: RegistrySetupCommand[]; } export interface RegistryPackageDependencies { createPrompter?: () => Prompter; hasInteractiveTerminal?: () => boolean; } export interface RegistryPackageOperations { itemAddress(item: string): string; metadata(item: unknown): PackageMetadata | undefined; assertCompatibleVersion(requiredVersion: string | undefined): void; runSetups(input: { item: string; setups: RegistrySetupCommand[]; prompter: Prompter; }): Promise; setupReminder(item: string): string; } /** Resolves, installs, and configures the selected components of a registry package. */ export declare function runRegistryPackage(input: { logger: RegistryCommandLogger; appRoot: string; item: string; components: readonly RegistryPackageComponent[]; config: RegistryConfig; options: AddCommandOptions & { prompter?: Prompter; signal?: AbortSignal; }; dependencies: RegistryPackageDependencies; operations: RegistryPackageOperations; }): Promise; export {};