import { Command } from "@oclif/core"; import { SupernovaApiClient } from "@supernova-studio/client"; import { z } from "zod"; import { SupernovaConfigService } from "../utils/config.service.js"; import { TargetEnv } from "./environment.js"; export declare abstract class BaseCommand extends Command { protected env: TargetEnv; protected configService: SupernovaConfigService; private _apiClient; abstract get commandId(): string; abstract get configSchema(): z.ZodType; protected apiClient(): Promise; protected ensureAuthenticated(): Promise; protected performLogin(): Promise; protected openBrowser(url: string): Promise; protected promptLoginIfInteractive(): Promise; protected init(): Promise; protected promptBrandId(designSystemId: string, versionId?: string): Promise; protected fetchAccessibleDesignSystems(): Promise<{ accessible: { id: string; createdAt: Date; updatedAt: Date; workspaceId: string; meta: { name: string; description?: string | undefined; }; sources: any[]; isPublic: true; docExporterId: string; docSlug: string; docSlugDeprecated: string; isMultibrand: boolean; basePrefixes: string[]; isApprovalFeatureEnabled: boolean; approvalRequiredForPublishing: boolean; accessMode: "InviteOnly" | "Open"; membersGenerated: boolean; sharedDraftId: string; isAvailableToUser: boolean; role?: "Owner" | "Admin" | "Creator" | "Viewer" | "Billing" | "Guest" | "Contributor" | undefined; effectiveRole?: "Admin" | "Creator" | "Viewer" | "Contributor" | undefined; docUserSlug?: string | undefined; docViewUrl?: string | undefined; designSystemSwitcher?: { isEnabled: boolean; designSystemIds: string[]; } | undefined; }[]; workspaceById: Map | undefined; card?: { name?: string | null | undefined; cardId?: string | null | undefined; last4?: string | null | undefined; expiryMonth?: string | null | undefined; expiryYear?: string | null | undefined; brand?: string | null | undefined; } | undefined; monthlyCreditGrantAnchor?: string | undefined; monthlyCreditGrantAmount?: number | undefined; builderSeatLimit?: number | undefined; fullSeatLimit?: number | undefined; additionalCredits?: number | undefined; builderSeats?: number | undefined; fullSeats?: number | undefined; subscriptionStatus?: NonNullable<"unknown" | "active" | "trialing" | "past_due" | "canceled" | "unpaid" | "incomplete_expired" | "incomplete"> | undefined; internalStatus?: NonNullable<"active" | "suspended" | "gracePeriod" | "cancelled" | "downgraded_to_free"> | undefined; stripeSubscriptionId?: string | undefined; stripeCustomerId?: string | undefined; stripeScheduleId?: string | undefined; currentPeriodStart?: string | undefined; currentPeriodEnd?: string | undefined; cancelAt?: string | undefined; fullSeatPriceId?: string | undefined; builderSeatPriceId?: string | undefined; additionalCreditsPriceId?: string | undefined; subscriptionStatusUpdatedAt?: string | undefined; }; aiFeaturesEnabled: boolean; projectsEnabled: boolean; defaultProjectAccessMode: "InviteOnly" | "Open" | "Unlisted"; defaultProjectRole: "Builder" | "Viewer"; aiAskFeaturesEnabled: boolean; npmRegistry?: { authType: "Custom" | "None" | "Basic" | "Bearer"; registryType: "Custom" | "NPMJS" | "GitHub" | "AzureDevOps" | "Artifactory"; enabledScopes: string[]; bypassProxy: boolean; registryUrl: string; proxyUrl: string; password?: string | undefined; username?: string | undefined; accessToken?: string | undefined; customRegistryUrl?: string | undefined; } | undefined; aiCustomInstruction?: string | undefined; }>; }>; protected promptDesignSystemFromList(accessible: Awaited["fetchAccessibleDesignSystems"]>>["accessible"], workspaceById: Awaited["fetchAccessibleDesignSystems"]>>["workspaceById"]): Promise; protected promptDesignSystemId(): Promise; protected getVersionId(designSystemId: string, versionId?: string): Promise; protected getWorkspaceId(workspaceId?: string): Promise; private prompt; private searchPrompt; } //# sourceMappingURL=base-command.d.ts.map