// Auto-generated by script/generate-sdk.ts — DO NOT EDIT
// Run `pnpm run generate:sdk` to regenerate.

// --- Return types (derived from __jsonSchema) ---

export type ReplayListResult = {
  /** Replay activity score */
  activity?: number | null;
  /** Browser metadata */
  browser?: Record<string, unknown> | null;
  /** Dead click count */
  count_dead_clicks?: number | null;
  /** Associated error count */
  count_errors?: number | null;
  /** Info event count */
  count_infos?: number | null;
  /** Rage click count */
  count_rage_clicks?: number | null;
  /** Recording segment count */
  count_segments?: number | null;
  /** Visited URL count */
  count_urls?: number | null;
  /** Warning event count */
  count_warnings?: number | null;
  /** Device metadata */
  device?: Record<string, unknown> | null;
  /** Distribution */
  dist?: string | null;
  /** Replay duration in seconds */
  duration?: number | null;
  /** Environment */
  environment?: string | null;
  /** Linked error IDs */
  error_ids: unknown[];
  /** Replay finish timestamp */
  finished_at?: string | null;
  /** Whether the current user has viewed the replay */
  has_viewed?: boolean | null;
  /** Replay ID */
  id: string;
  /** Linked info event IDs */
  info_ids: unknown[];
  /** Archived flag */
  is_archived?: boolean | null;
  /** Operating system metadata */
  os?: Record<string, unknown> | null;
  /** OTA update metadata */
  ota_updates?: Record<string, unknown> | null;
  /** Platform */
  platform?: string | null;
  /** Numeric project ID */
  project_id?: string | null;
  /** Associated releases */
  releases: unknown[];
  /** SDK metadata */
  sdk?: Record<string, unknown> | null;
  /** Replay start timestamp */
  started_at?: string | null;
  /** Replay tags */
  tags: Record<string, unknown>;
  /** Linked trace IDs */
  trace_ids: unknown[];
  /** Visited URLs */
  urls: unknown[];
  /** User metadata */
  user?: Record<string, unknown> | null;
  /** Linked warning event IDs */
  warning_ids: unknown[];
};

export type ReplayViewResult = {
  /** Summarized replay activity */
  activity: unknown[];
  /** Browser metadata */
  browser?: Record<string, unknown> | null;
  /** Dead click count */
  count_dead_clicks?: number | null;
  /** Associated error count */
  count_errors?: number | null;
  /** Info event count */
  count_infos?: number | null;
  /** Rage click count */
  count_rage_clicks?: number | null;
  /** Recording segment count */
  count_segments?: number | null;
  /** Visited URL count */
  count_urls?: number | null;
  /** Warning event count */
  count_warnings?: number | null;
  /** Device metadata */
  device?: Record<string, unknown> | null;
  /** Distribution */
  dist?: string | null;
  /** Replay duration in seconds */
  duration?: number | null;
  /** Environment */
  environment?: string | null;
  /** Linked error IDs */
  error_ids: unknown[];
  /** Replay finish timestamp */
  finished_at?: string | null;
  /** Whether the current user has viewed the replay */
  has_viewed?: boolean | null;
  /** Replay ID */
  id: string;
  /** Linked info event IDs */
  info_ids: unknown[];
  /** Archived flag */
  is_archived?: boolean | null;
  /** Operating system metadata */
  os?: Record<string, unknown> | null;
  /** OTA update metadata */
  ota_updates?: Record<string, unknown> | null;
  /** Platform */
  platform?: string | null;
  /** Numeric project ID */
  project_id?: string | null;
  /** Associated releases */
  releases: unknown[];
  /** SDK metadata */
  sdk?: Record<string, unknown> | null;
  /** Replay start timestamp */
  started_at?: string | null;
  /** Replay tags */
  tags: Record<string, unknown>;
  /** Linked trace IDs */
  trace_ids: unknown[];
  /** Visited URLs */
  urls: unknown[];
  /** User metadata */
  user?: Record<string, unknown> | null;
  /** Linked warning event IDs */
  warning_ids: unknown[];
  /** Replay click summaries */
  clicks?: unknown[];
  /** Replay type */
  replay_type?: string | null;
  /** Organization slug */
  org: string;
  /** Replay-related issues */
  relatedIssues: unknown[];
  /** Replay-related traces */
  relatedTraces: unknown[];
};

export type RepoListResult = {
  /** Repository ID */
  id: string;
  /** Repository name */
  name: string;
  /** Repository URL */
  url: string | null;
  /** Version control provider */
  provider: Record<string, unknown>;
  /** Integration status */
  status: string;
  /** Creation date (ISO 8601) */
  dateCreated?: string;
  /** Integration ID */
  integrationId?: string;
  /** External slug (e.g. org/repo) */
  externalSlug?: string | null;
  /** External ID */
  externalId?: string | null;
};

export type TeamListResult = {
  /** Team ID */
  id: string;
  /** Team slug */
  slug: string;
  /** Team name */
  name: string;
  /** Creation date (ISO 8601) */
  dateCreated?: string | null;
  /** Whether you are a member */
  isMember?: boolean;
  /** Your role in the team */
  teamRole?: string | null;
  /** Number of members */
  memberCount?: number;
};

export type IssueListResult = {
  /** Numeric issue ID */
  id: string;
  /** Human-readable short ID (e.g. PROJ-ABC) */
  shortId: string;
  /** Issue title */
  title: string;
  /** Culprit string */
  culprit?: string | null;
  /** Total event count */
  count?: string;
  /** Number of affected users */
  userCount?: number;
  /** First occurrence (ISO 8601) */
  firstSeen?: string | null;
  /** Most recent occurrence (ISO 8601) */
  lastSeen?: string | null;
  /** Severity level */
  level?: string;
  /** Issue status */
  status?: string;
  /** URL to the issue in Sentry */
  permalink?: string;
  /** Project info */
  project?: Record<string, unknown>;
  /** Issue metadata */
  metadata?: Record<string, unknown>;
  /** Assigned user or team */
  assignedTo?: Record<string, unknown> | null;
  /** Triage priority */
  priority?: string;
  /** Platform */
  platform?: string;
  /** Issue substatus */
  substatus?: string | null;
  /** Whether the issue is unhandled */
  isUnhandled?: boolean;
  /** Seer AI fixability score (0-1) */
  seerFixabilityScore?: number | null;
};

export type IssueEventsResult = {
  /** Internal event ID */
  id: string;
  /** Event type (error, default, transaction) */
  "event.type": string;
  /** Group (issue) ID */
  groupID?: string | null;
  /** UUID-format event ID */
  eventID: string;
  /** Project ID */
  projectID?: string;
  /** Event message */
  message?: string;
  /** Event title */
  title?: string;
  /** Source location (file:line) */
  location?: string | null;
  /** Culprit function/module */
  culprit?: string | null;
  /** User context */
  user?: Record<string, unknown> | null;
  /** Event tags */
  tags?: unknown[];
  /** Platform (python, javascript, etc.) */
  platform?: string | null;
  /** ISO 8601 creation timestamp */
  dateCreated?: string;
  /** Crash file URL */
  crashFile?: string | null;
  /** Event metadata */
  metadata?: Record<string, unknown> | null;
};

export type IssueViewResult = {
  /** Numeric issue ID */
  id: string;
  /** Human-readable short ID (e.g. PROJ-ABC) */
  shortId: string;
  /** Issue title */
  title: string;
  /** Culprit string */
  culprit?: string | null;
  /** Total event count */
  count?: string;
  /** Number of affected users */
  userCount?: number;
  /** First occurrence (ISO 8601) */
  firstSeen?: string | null;
  /** Most recent occurrence (ISO 8601) */
  lastSeen?: string | null;
  /** Severity level */
  level?: string;
  /** Issue status */
  status?: string;
  /** URL to the issue in Sentry */
  permalink?: string;
  /** Project info */
  project?: Record<string, unknown>;
  /** Issue metadata */
  metadata?: Record<string, unknown>;
  /** Assigned user or team */
  assignedTo?: Record<string, unknown> | null;
  /** Triage priority */
  priority?: string;
  /** Platform */
  platform?: string;
  /** Issue substatus */
  substatus?: string | null;
  /** Whether the issue is unhandled */
  isUnhandled?: boolean;
  /** Seer AI fixability score (0-1) */
  seerFixabilityScore?: number | null;
  /** Latest event for the issue (full detail) */
  event?: unknown | null;
  /** Organization slug */
  org?: string | null;
  /** Related Session Replay IDs */
  replayIds?: unknown[];
  /** Trace context from the latest event's span tree */
  trace?: Record<string, unknown> | null;
};

export type EventListResult = {
  /** Internal event ID */
  id: string;
  /** Event type (error, default, transaction) */
  "event.type": string;
  /** Group (issue) ID */
  groupID?: string | null;
  /** UUID-format event ID */
  eventID: string;
  /** Project ID */
  projectID?: string;
  /** Event message */
  message?: string;
  /** Event title */
  title?: string;
  /** Source location (file:line) */
  location?: string | null;
  /** Culprit function/module */
  culprit?: string | null;
  /** User context */
  user?: Record<string, unknown> | null;
  /** Event tags */
  tags?: unknown[];
  /** Platform (python, javascript, etc.) */
  platform?: string | null;
  /** ISO 8601 creation timestamp */
  dateCreated?: string;
  /** Crash file URL */
  crashFile?: string | null;
  /** Event metadata */
  metadata?: Record<string, unknown> | null;
};

export type LogListResult = {
  /** Unique log entry ID */
  "sentry.item_id": string;
  /** Log timestamp (ISO 8601) */
  timestamp: string;
  /** Nanosecond-precision timestamp */
  timestamp_precise: number;
  /** Log message */
  message?: string | null;
  /** Severity level (error, warning, info, debug) */
  severity?: string | null;
  /** Trace ID for correlation */
  trace?: string | null;
};

export type MonitorListResult = {
  /** Monitor ID */
  id: string;
  /** Monitor slug */
  slug: string;
  /** Monitor name */
  name: string;
  /** Monitor status (e.g. active, disabled) */
  status: string;
  /** Whether the monitor is muted */
  isMuted?: boolean;
  /** Schedule configuration */
  config?: Record<string, unknown>;
  /** Creation date (ISO 8601) */
  dateCreated?: string;
  /** Owning project */
  project?: Record<string, unknown>;
};

export type SpanListResult = {
  /** Span ID */
  id: string;
  /** Parent span ID */
  parent_span?: string | null;
  /** Span operation (e.g. http.client, db) */
  "span.op"?: string | null;
  /** Span description */
  description?: string | null;
  /** Duration (ms) */
  "span.duration"?: number | null;
  /** Timestamp (ISO 8601) */
  timestamp: string;
  /** Project slug */
  project: string;
  /** Transaction name */
  transaction?: string | null;
  /** Trace ID */
  trace: string;
};

export type TraceListResult = {
  /** Trace ID */
  trace: string;
  /** Event ID */
  id: string;
  /** Transaction name */
  transaction: string;
  /** Timestamp (ISO 8601) */
  timestamp: string;
  /** Duration (ms) */
  "transaction.duration": number;
  /** Project slug */
  project: string;
};

export type TrialListResult = {
  /** Trial category (e.g. seerUsers, seerAutofix) */
  category: string;
  /** Start date (ISO 8601) */
  startDate: string | null;
  /** End date (ISO 8601) */
  endDate: string | null;
  /** Reason code */
  reasonCode: number;
  /** Whether the trial has started */
  isStarted: boolean;
  /** Trial duration in days */
  lengthDays: number | null;
};

// --- Parameter types ---

export type AlertIssuesListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Maximum number of issue alert rules to list */
  limit?: number;
  /** Filter rules by name */
  query?: string;
  /** Pagination cursor (use "next" for next page, "prev" for previous) */
  cursor?: string;
};

export type AlertIssuesViewParams = {
  /** Positional argument */
  orgProjectRuleIdOrName?: string;
};

export type AlertIssuesCreateParams = {
  /** Positional argument */
  target?: string;
  /** Rule name */
  name: string;
  /** Condition object JSON (repeatable, or pass one JSON array) */
  condition?: string;
  /** Action object JSON (repeatable, or pass one JSON array) */
  action?: string;
  /** Condition/action match mode: all or any */
  actionMatch?: string;
  /** Frequency in minutes (default: 30) */
  frequency?: number;
  /** Environment filter */
  environment?: string;
  /** Filter object JSON (repeatable, or pass one JSON array) */
  filter?: string;
  /** Filter match mode: all or any */
  filterMatch?: string;
  /** Owner (team:user style value accepted by Sentry API) */
  owner?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type AlertIssuesDeleteParams = {
  /** Positional argument */
  orgProjectRuleIdOrName?: string;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type AlertIssuesEditParams = {
  /** Positional argument */
  orgProjectRuleIdOrName?: string;
  /** New rule name */
  name?: string;
  /** Rule status: active or disabled */
  status?: string;
  /** Condition object JSON (repeatable, or pass one JSON array) */
  condition?: string;
  /** Action object JSON (repeatable, or pass one JSON array) */
  action?: string;
  /** Condition/action match mode: all or any */
  actionMatch?: string;
  /** Frequency in minutes */
  frequency?: string;
  /** Environment value (pass empty string to clear) */
  environment?: string;
  /** Filter object JSON (repeatable, or pass one JSON array) */
  filter?: string;
  /** Filter match mode: all or any */
  filterMatch?: string;
  /** Owner value (pass empty string to clear) */
  owner?: string;
};

export type AlertMetricsListParams = {
  /** Positional argument */
  target?: string;
  /** Maximum number of metric alert rules to list */
  limit?: number;
  /** Filter rules by name */
  query?: string;
  /** Pagination cursor (use "next" for next page, "prev" for previous) */
  cursor?: string;
};

export type AlertMetricsViewParams = {
  /** Positional argument */
  orgRuleIdOrName?: string;
};

export type AlertMetricsCreateParams = {
  /** Positional argument */
  org?: string;
  /** Rule name */
  name: string;
  /** Metric query filter string */
  query: string;
  /** Aggregate expression (for example count(), p95(transaction.duration)) */
  aggregate: string;
  /** Dataset (errors, transactions, sessions, events, spans, metrics) */
  dataset: string;
  /** Evaluation window in minutes */
  timeWindow: string;
  /** Trigger object JSON (repeatable, or pass one JSON array) */
  trigger?: string;
  /** Project slug filter (repeatable or comma-separated) */
  project?: string;
  /** Environment filter */
  environment?: string;
  /** Owner value accepted by Sentry API */
  owner?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type AlertMetricsDeleteParams = {
  /** Positional argument */
  orgRuleIdOrName?: string;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type AlertMetricsEditParams = {
  /** Positional argument */
  orgRuleIdOrName?: string;
  /** New rule name */
  name?: string;
  /** active or disabled */
  status?: string;
  /** Metric query filter */
  query?: string;
  /** Aggregate expression */
  aggregate?: string;
  /** Dataset (errors, transactions, sessions, events, spans, metrics) */
  dataset?: string;
  /** Evaluation window in minutes */
  timeWindow?: string;
  /** Trigger object JSON (repeatable, or pass one JSON array) */
  trigger?: string;
  /** Project slug filter (repeatable or comma-separated) */
  project?: string;
  /** Environment value (pass empty string to clear) */
  environment?: string;
  /** Owner value (pass empty string to clear) */
  owner?: string;
};

export type AuthLoginParams = {
  /** Authenticate using an API token instead of OAuth */
  token?: string;
  /** Timeout for OAuth flow in seconds (default: 900) */
  timeout?: number;
  /** Re-authenticate without prompting */
  force?: boolean;
  /** Sentry instance URL to authenticate against (e.g. https://sentry.example.com). Required for self-hosted; defaults to SaaS (https://sentry.io). */
  url?: string;
  /** Request only read-only OAuth scopes (project:read, org:read, event:read, member:read, team:read). Useful for handing tokens to AI agents or CI jobs that should not be able to mutate Sentry state. */
  readOnly?: boolean;
  /** Request specific OAuth scopes (repeatable, comma-separated). E.g. --scope project:read --scope org:read. Overrides the default scope set. */
  scope?: string;
};

export type AuthRefreshParams = {
  /** Force refresh even if token is still valid */
  force?: boolean;
  /** Re-authenticate with read-only OAuth scopes (project:read, org:read, event:read, member:read, team:read) */
  readOnly?: boolean;
  /** Re-authenticate with specific OAuth scopes (repeatable, comma-separated). E.g. --scope project:read --scope org:read */
  scope?: string;
};

export type AuthStatusParams = {
  /** Show the stored token (masked by default) */
  showToken?: boolean;
};

export type CliDefaultsParams = {
  /** Clear the specified default, or all defaults if no key is given */
  clear?: boolean;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
};

export type CliFixParams = {
  /** Show what would be fixed without making changes */
  dryRun?: boolean;
};

export type CliImportParams = {
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
  /** Explicitly trust this URL (bypasses same-file trust check) */
  url?: string;
  /** Skip token validation against the Sentry API */
  skipValidation?: boolean;
};

export type CliSetupParams = {
  /** Install the binary from a temp location to the system path */
  install?: boolean;
  /** Installation method (curl, npm, pnpm, bun, yarn) */
  method?: string;
  /** Release channel to persist (stable or nightly) */
  channel?: string;
  /** Skip PATH modification */
  noModifyPath?: boolean;
  /** Skip shell completion installation */
  noCompletions?: boolean;
  /** Skip agent skill installation for AI coding assistants */
  noAgentSkills?: boolean;
  /** Suppress output (for scripted usage) */
  quiet?: boolean;
};

export type CliUninstallParams = {
  /** Keep the config directory (~/.sentry) and auth tokens */
  keepConfig?: boolean;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type CliUpgradeParams = {
  /** Positional argument */
  version?: string;
  /** Check for updates without installing */
  check?: boolean;
  /** Force upgrade even if already on the latest version */
  force?: boolean;
  /** Upgrade using only cached version info and patches (no network) */
  offline?: boolean;
  /** Installation method to use (curl, brew, npm, pnpm, bun, yarn) */
  method?: string;
};

export type CodeMappingsUploadParams = {
  /** Positional argument */
  path?: string;
  /** Repository name (e.g., owner/repo). Auto-detected from git remote if omitted. */
  repo?: string;
  /** Default branch name. Auto-detected from git remote HEAD if omitted. */
  defaultBranch?: string;
};

export type DartSymbolMapUploadParams = {
  /** Positional argument */
  path?: string;
  /** Debug ID (UUID) from the companion native debug file */
  debugId: string;
  /** Validate the file without uploading (dry-run) */
  noUpload?: boolean;
};

export type DashboardListParams = {
  /** Maximum number of dashboards to list */
  limit?: number;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type DashboardViewParams = {
  /** Auto-refresh interval in seconds (default: 60, min: 10) */
  refresh?: string;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
};

export type DashboardWidgetAddParams = {
  /** Display type (big_number, line, area, bar, table, stacked_area, top_n, text, categorical_bar, details, wheel, rage_and_dead_clicks, server_tree, agents_traces_table) */
  display: string;
  /** Widget dataset (default: spans). Accepts canonical names and API synonyms: spans, error-events/errors, transaction-like/transactions, tracemetrics/metrics, logs, issue, discover */
  dataset?: string;
  /** Aggregate expression (e.g. count, p95:span.duration) */
  query?: string;
  /** Search conditions filter (e.g. is:unresolved) */
  where?: string;
  /** Group-by column (repeatable) */
  groupBy?: string;
  /** Order by (prefix - for desc, e.g. -count) */
  sort?: string;
  /** Result limit */
  limit?: string;
  /** Grid column position (0-based, 0–5) */
  col?: string;
  /** Grid row position (0-based) */
  row?: string;
  /** Widget width in grid columns (1–6) */
  width?: string;
  /** Widget height in grid rows (min 1) */
  height?: string;
  /** Layout mode: sequential (append in order) or dense (fill gaps) */
  layout?: string;
};

export type DashboardWidgetEditParams = {
  /** Widget index (0-based) */
  index?: string;
  /** Widget title to match */
  title?: string;
  /** New widget title */
  newTitle?: string;
  /** Display type (big_number, line, area, bar, table, stacked_area, top_n, text, categorical_bar, details, wheel, rage_and_dead_clicks, server_tree, agents_traces_table) */
  display?: string;
  /** Widget dataset (default: spans). Accepts canonical names and API synonyms: spans, error-events/errors, transaction-like/transactions, tracemetrics/metrics, logs, issue, discover */
  dataset?: string;
  /** Aggregate expression (e.g. count, p95:span.duration) */
  query?: string;
  /** Search conditions filter (e.g. is:unresolved) */
  where?: string;
  /** Group-by column (repeatable) */
  groupBy?: string;
  /** Order by (prefix - for desc, e.g. -count) */
  sort?: string;
  /** Result limit */
  limit?: string;
  /** Grid column position (0-based, 0–5) */
  col?: string;
  /** Grid row position (0-based) */
  row?: string;
  /** Widget width in grid columns (1–6) */
  width?: string;
  /** Widget height in grid rows (min 1) */
  height?: string;
};

export type DashboardWidgetDeleteParams = {
  /** Widget index (0-based) */
  index?: string;
  /** Widget title to match */
  title?: string;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type DashboardRevisionsParams = {
  /** Maximum number of revisions to list */
  limit?: number;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type DashboardRestoreParams = {
  /** Revision ID to restore */
  revision: string;
};

export type OrgListParams = {
  /** Maximum number of organizations to list */
  limit?: number;
};

export type OrgViewParams = {
  /** Positional argument */
  org?: string;
};

export type ProjectCreateParams = {
  /** Positional argument */
  namePlatform?: string;
  /** Team to create the project under */
  team?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ProjectDeleteParams = {
  /** Positional argument */
  orgProject?: string;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ProjectListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Maximum number of projects to list */
  limit?: number;
  /** Filter by platform (e.g., javascript, python) */
  platform?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type ProjectViewParams = {
  /** Positional argument */
  orgProject?: string;
};

export type ProguardUploadParams = {
  /** Force a specific UUID instead of computing from file content (only valid with a single file) */
  uuid?: string;
  /** Compute and print UUIDs without uploading (dry-run) */
  noUpload?: boolean;
  /** Require at least one mapping file (error if none provided) */
  requireOne?: boolean;
};

export type ProguardUuidParams = {
  /** Positional argument */
  path?: string;
};

export type ReplayListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Number of replays (1-1000) */
  limit?: number;
  /** Search query (Sentry replay search syntax) */
  query?: string;
  /** Filter by environment (repeatable, comma-separated) */
  environment?: string;
  /** Sort by: date, oldest, duration, errors, activity, or a raw replay sort field */
  sort?: string;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type ReleaseListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Maximum number of releases to list */
  limit?: number;
  /** Sort: date, sessions, users, crash_free_sessions (cfs), crash_free_users (cfu) */
  sort?: string;
  /** Filter by environment (repeatable, comma-separated) */
  environment?: string;
  /** Health stats period (e.g., 24h, 7d, 14d, 90d) */
  period?: string;
  /** Filter by status: open (default) or archived */
  status?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type ReleaseViewParams = {
  /** Positional argument */
  orgVersion?: string;
};

export type ReleaseCreateParams = {
  /** Positional argument */
  orgVersion?: string;
  /** Associate with project(s), comma-separated */
  project?: string;
  /** Immediately finalize the release (set dateReleased) */
  finalize?: boolean;
  /** Git ref (branch or tag name) */
  ref?: string;
  /** URL to the release source */
  url?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ReleaseFinalizeParams = {
  /** Positional argument */
  orgVersion?: string;
  /** Custom release timestamp (ISO 8601). Defaults to now. */
  released?: string;
  /** URL for the release */
  url?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ReleaseDeleteParams = {
  /** Positional argument */
  orgVersion?: string;
  /** Skip confirmation prompt */
  yes?: boolean;
  /** Force the operation without confirmation */
  force?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ReleaseArchiveParams = {
  /** Positional argument */
  orgVersion?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ReleaseRestoreParams = {
  /** Positional argument */
  orgVersion?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ReleaseDeployParams = {
  /** Positional argument */
  orgVersionEnvironmentName?: string;
  /** URL for the deploy */
  url?: string;
  /** Deploy start time (ISO 8601) */
  started?: string;
  /** Deploy finish time (ISO 8601) */
  finished?: string;
  /** Deploy duration in seconds (sets started = now - time, finished = now) */
  time?: string;
  /** Show what would happen without making changes */
  dryRun?: boolean;
};

export type ReleaseDeploysParams = {
  /** Positional argument */
  orgVersion?: string;
};

export type ReleaseSetCommitsParams = {
  /** Positional argument */
  orgVersion?: string;
  /** Auto-discover commits via repository integration (needs local git checkout) */
  auto?: boolean;
  /** Read commits from local git history */
  local?: boolean;
  /** Clear all commits from the release */
  clear?: boolean;
  /** Explicit commit as REPO@SHA or REPO@PREV..SHA (comma-separated) */
  commit?: string;
  /** Number of commits to read with --local */
  initialDepth?: number;
};

export type RepoListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Maximum number of repositories to list */
  limit?: number;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type TeamListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Maximum number of teams to list */
  limit?: number;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type IssueListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Search query (Sentry syntax, implicit AND, no OR operator) */
  query?: string;
  /** Maximum number of issues to list */
  limit?: number;
  /** Sort by: date, new, freq, user */
  sort?: string;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Pagination cursor (use "next" for next page, "prev" for previous) */
  cursor?: string;
};

export type IssueEventsParams = {
  /** Positional argument */
  issue?: string;
  /** Number of events (1-1000) */
  limit?: number;
  /** Search query (Sentry search syntax) */
  query?: string;
  /** Include full event body (stacktraces) */
  full?: boolean;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type IssueExplainParams = {
  /** Positional argument */
  issue?: string;
  /** Force new analysis even if one exists */
  force?: boolean;
};

export type IssuePlanParams = {
  /** Positional argument */
  issue?: string;
  /** Force new plan even if one exists */
  force?: boolean;
};

export type IssueViewParams = {
  /** Positional argument */
  issue?: string;
  /** Span tree depth limit (number, "all" for unlimited, "no" to disable) */
  spans?: number;
};

export type IssueResolveParams = {
  /** Positional argument */
  issue?: string;
  /** Resolve in a release, next release, or commit ('<version>' | '@next' | '@commit' | '@commit:<repo>@<sha>') */
  in?: string;
};

export type IssueUnresolveParams = {
  /** Positional argument */
  issue?: string;
};

export type IssueArchiveParams = {
  /** Positional argument */
  issue?: string;
  /** Condition for unarchival: forever, auto, 30m, 10x, 10u, 10x/5m, etc. */
  until?: string;
};

export type IssueMergeParams = {
  /** Prefer this issue as the canonical parent (must match one of the provided IDs) */
  into?: string;
};

export type EventViewParams = {
  /** Span tree depth limit (number, "all" for unlimited, "no" to disable) */
  spans?: number;
};

export type EventListParams = {
  /** Positional argument */
  issue?: string;
  /** Number of events (1-1000) */
  limit?: number;
  /** Search query (Sentry search syntax) */
  query?: string;
  /** Include full event body (stacktraces) */
  full?: boolean;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type EventSendParams = {
  /** DSN to send events to (overrides SENTRY_DSN env var) */
  dsn?: string;
  /** Event message (repeat for multi-line) */
  message?: string;
  /** Arguments for message template (repeat for multiple) */
  messageArg?: string;
  /** Event severity level */
  level?: "debug" | "info" | "warning" | "error" | "fatal";
  /** Release version */
  release?: string;
  /** Distribution identifier */
  dist?: string;
  /** Environment name (e.g. production, staging) */
  env?: string;
  /** Platform identifier (default: other) */
  platform?: string;
  /** Tag as KEY:VALUE (repeat for multiple) */
  tag?: string;
  /** Extra data as KEY:VALUE (repeat for multiple) */
  extra?: string;
  /** User info as KEY:VALUE — id, email, username, ip_address, or custom */
  user?: string;
  /** Custom fingerprint part (repeat for multiple) */
  fingerprint?: string;
  /** Event timestamp (Unix epoch, ISO 8601, or RFC 2822) */
  timestamp?: string;
  /** Do not include environment variables in the event */
  noEnviron?: boolean;
  /** Path to a log file — last 100 lines are attached as breadcrumbs */
  logfile?: string;
  /** Parse 'CATEGORY: message' prefixes from logfile breadcrumbs */
  withCategories?: boolean;
  /** Send file contents as-is without parsing */
  raw?: boolean;
};

export type ExploreParams = {
  /** Positional argument */
  target?: string;
  /** API field or aggregate (repeatable). E.g., title, "count()", "p50(transaction.duration)" */
  field?: string;
  /** Metric name for --dataset metrics. Auto-resolves type/unit via API. */
  metric?: string;
  /** Aggregation for --metric (sum, avg, count, p50, p95, etc.) */
  agg?: string;
  /** Dataset to query (errors, spans, metrics, logs, replays) */
  dataset?: string;
  /** Search query (Sentry search syntax) */
  query?: string;
  /** Sort field (prefix with - for desc, e.g., "-count()") */
  sort?: string;
  /** Replay environment filter for --dataset replays (repeatable, comma-separated) */
  environment?: string;
  /** Number of rows (1-1000) */
  limit?: number;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type LogListParams = {
  /** Number of log entries (1-1000) */
  limit?: number;
  /** Filter query (e.g., "level:error", "project:backend", "project:[a,b]") */
  query?: string;
  /** Stream logs (optionally specify poll interval in seconds) */
  follow?: string;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Sort order: "newest" (default) or "oldest" */
  sort?: string;
};

export type MonitorRunParams = {
  /** DSN to send check-ins to (overrides SENTRY_DSN env var) */
  dsn?: string;
  /** Environment of the monitor */
  environment?: string;
  /** Upsert the monitor with this crontab schedule (e.g. '0 * * * *') */
  schedule?: string;
  /** Minutes after the expected check-in before it is missed (requires --schedule) */
  checkInMargin?: string;
  /** Minutes a check-in may run before timing out (requires --schedule) */
  maxRuntime?: string;
  /** Timezone of the schedule, tz database string (requires --schedule) */
  timezone?: string;
  /** Consecutive failures before an issue is created (requires --schedule) */
  failureIssueThreshold?: string;
  /** Consecutive successes before an issue is resolved (requires --schedule) */
  recoveryThreshold?: string;
};

export type MonitorListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Maximum number of monitors to list */
  limit?: number;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type SourcemapInjectParams = {
  /** Positional argument */
  directory?: string;
  /** Comma-separated file extensions to process (default: .js,.cjs,.mjs) */
  ext?: string;
  /** Comma-separated glob patterns to exclude (gitignore-style) */
  ignore?: string;
  /** Path to a file with gitignore-style patterns to exclude */
  ignoreFile?: string;
  /** Show what would be modified without writing */
  dryRun?: boolean;
  /** Exit successfully when no JS + sourcemap pairs are found (default: error out to catch silent build misconfigurations) */
  allowEmpty?: boolean;
};

export type SourcemapUploadParams = {
  /** Positional argument */
  directory?: string;
  /** Release version to associate with the upload */
  release?: string;
  /** Distribution identifier to disambiguate builds within a release */
  dist?: string;
  /** URL prefix for uploaded files (default: ~/) */
  urlPrefix?: string;
  /** Comma-separated file extensions to process (default: .js,.cjs,.mjs) */
  ext?: string;
  /** Comma-separated glob patterns to exclude (gitignore-style) */
  ignore?: string;
  /** Path to a file with gitignore-style patterns to exclude */
  ignoreFile?: string;
  /** Strip a prefix from uploaded file paths (e.g. 'build/') */
  stripPrefix?: string;
  /** Automatically strip the longest common path prefix from all files */
  stripCommonPrefix?: boolean;
  /** Upload files as-is without injecting debug IDs */
  noRewrite?: boolean;
  /** Exit successfully when no JS + sourcemap pairs are found (default: error out to catch silent build misconfigurations) */
  allowEmpty?: boolean;
};

export type SourcemapResolveParams = {
  /** Positional argument */
  directory?: string;
  /** Comma-separated file extensions to process (default: .js,.cjs,.mjs) */
  ext?: string;
  /** Comma-separated glob patterns to exclude (gitignore-style) */
  ignore?: string;
  /** Path to a file with gitignore-style patterns to exclude */
  ignoreFile?: string;
};

export type SpanListParams = {
  /** Number of spans (<=1000) */
  limit?: number;
  /** Filter spans (e.g., "op:db", "project:backend", "project:[cli,api]") */
  query?: string;
  /** Sort order: date, duration */
  sort?: string;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type SpanViewParams = {
  /** Span tree depth limit (number, "all" for unlimited, "no" to disable) */
  spans?: number;
};

export type TraceListParams = {
  /** Positional argument */
  orgProject?: string;
  /** Number of traces (1-1000) */
  limit?: number;
  /** Search query (Sentry search syntax) */
  query?: string;
  /** Sort by: date, duration */
  sort?: string;
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Navigate pages: "next", "prev", "first" (or raw cursor string) */
  cursor?: string;
};

export type TraceViewParams = {
  /** Fetch full span attributes (auto-enabled with --json) */
  full?: boolean;
  /** Span tree depth limit (number, "all" for unlimited, "no" to disable) */
  spans?: number;
};

export type TraceLogsParams = {
  /** Time range: "7d", "2026-05-01..2026-06-01", ">=2026-05-01" */
  period?: string;
  /** Number of log entries (<=1000) */
  limit?: number;
  /** Filter query (e.g., "level:error", "project:backend", "project:[a,b]") */
  query?: string;
  /** Sort order: "newest" (default) or "oldest" */
  sort?: string;
};

export type TrialListParams = {
  /** Positional argument */
  org?: string;
};

export type TrialStartParams = {
  /** Positional argument */
  nameOrg?: string;
};

export type InitParams = {
  /** Positional argument */
  targetDirectory?: string;
  /** Accept non-interactive defaults (requires --features outside a TTY) */
  yes?: boolean;
  /** Show what would happen without making changes */
  dryRun?: boolean;
  /** Features to enable: errors,tracing,logs,replay,metrics,profiling,sourcemaps,crons,ai-monitoring,user-feedback */
  features?: string;
  /** Team slug to create the project under */
  team?: string;
  /** App to initialize in a monorepo (required with --yes when multiple apps are detected) */
  app?: string;
  /** Use the Ink-based interactive UI (default). Pass --no-tui to fall back to plain log output. */
  tui?: boolean;
};

export type LocalServeParams = {
  /** Port to listen on (default 8969) */
  port?: number;
  /** Hostname to bind to (default localhost) */
  host?: string;
  /** Suppress per-envelope tail output */
  quiet?: boolean;
  /** Only show items of this type (repeatable: error, transaction, log, ai) */
  filter?: string;
  /** Output format: human (default) or json (NDJSON) */
  format?: string;
};

export type LocalRunParams = {
  /** Port for the local server (default 8969) */
  port?: number;
  /** Hostname for the local server (default localhost) */
  host?: string;
  /** Verify SDK sends events, then exit */
  verify?: boolean;
  /** Kill the child after N seconds (0 = no timeout; defaults to 30 s in --verify mode) */
  timeout?: number;
};

export type ApiParams = {
  /** Positional argument */
  endpoint?: string;
  /** The HTTP method for the request */
  method?: string;
  /** Inline JSON body for the request (like curl -d) */
  data?: string;
  /** Add a typed parameter (key=value, key[sub]=value, key[]=value) */
  field?: string;
  /** Add a string parameter without JSON parsing */
  rawField?: string;
  /** Add a HTTP request header in key:value format */
  header?: string;
  /** The file to use as body for the HTTP request (use "-" to read from standard input) */
  input?: string;
  /** Do not print the response body */
  silent?: boolean;
  /** Show the resolved request without sending it */
  dryRun?: boolean;
};

export type SchemaParams = {
  /** Show all endpoints in a flat list */
  all?: boolean;
  /** Search endpoints by keyword */
  search?: string;
};

// --- SDK type ---

export type SentrySDK = {
    /** Display help for a command */
    help(...positional: string[]): Promise<unknown>;
    /** Query aggregate event data (Explore) */
    explore(params?: ExploreParams): Promise<unknown>;
    /** Initialize Sentry in your project (experimental) */
    init(params?: InitParams): Promise<unknown>;
    /** Make an authenticated API request */
    api(params?: ApiParams): Promise<unknown>;
    /** Browse the Sentry API schema */
    schema(params?: SchemaParams, ...positional: string[]): Promise<unknown>;
  alert: {
    issues: {
            /** List issue alert rules */
            list(params?: AlertIssuesListParams): Promise<unknown>;
            /** View an issue alert rule */
            view(params?: AlertIssuesViewParams): Promise<unknown>;
            /** Create an issue alert rule */
            create(params: AlertIssuesCreateParams): Promise<unknown>;
            /** Delete an issue alert rule */
            delete(params?: AlertIssuesDeleteParams): Promise<unknown>;
            /** Edit an issue alert rule */
            edit(params?: AlertIssuesEditParams): Promise<unknown>;
    };
    metrics: {
            /** List metric alert rules */
            list(params?: AlertMetricsListParams): Promise<unknown>;
            /** View a metric alert rule */
            view(params?: AlertMetricsViewParams): Promise<unknown>;
            /** Create a metric alert rule */
            create(params: AlertMetricsCreateParams): Promise<unknown>;
            /** Delete a metric alert rule */
            delete(params?: AlertMetricsDeleteParams): Promise<unknown>;
            /** Edit a metric alert rule */
            edit(params?: AlertMetricsEditParams): Promise<unknown>;
    };
  };
  auth: {
        /** Authenticate with Sentry */
        login(params?: AuthLoginParams): Promise<unknown>;
        /** Log out of Sentry */
        logout(): Promise<unknown>;
        /** Refresh your authentication token */
        refresh(params?: AuthRefreshParams): Promise<unknown>;
        /** View authentication status */
        status(params?: AuthStatusParams): Promise<unknown>;
        /** Print the stored authentication token */
        token(): Promise<unknown>;
        /** Show the currently authenticated identity */
        whoami(): Promise<unknown>;
  };
  cli: {
        /** View and manage default settings */
        defaults(params?: CliDefaultsParams, ...positional: string[]): Promise<unknown>;
        /** Send feedback about the CLI */
        feedback(...positional: string[]): Promise<unknown>;
        /** Diagnose and repair CLI database issues */
        fix(params?: CliFixParams): Promise<unknown>;
        /** Import settings from legacy .sentryclirc files */
        import(params?: CliImportParams): Promise<unknown>;
        /** Configure shell integration */
        setup(params?: CliSetupParams): Promise<unknown>;
        /** Uninstall Sentry CLI */
        uninstall(params?: CliUninstallParams): Promise<unknown>;
        /** Update the Sentry CLI to the latest version */
        upgrade(params?: CliUpgradeParams): Promise<unknown>;
  };
  "code-mappings": {
        /** Upload code mappings for stack trace linking */
        upload(params?: CodeMappingsUploadParams): Promise<unknown>;
  };
  "dart-symbol-map": {
        /** Upload a Dart/Flutter symbol map to Sentry */
        upload(params: DartSymbolMapUploadParams): Promise<unknown>;
  };
  dashboard: {
        /** List dashboards */
        list(params?: DashboardListParams, ...positional: string[]): Promise<unknown>;
        /** View a dashboard */
        view: {
          (params: DashboardViewParams & { refresh: string }): AsyncIterable<unknown>;
          (params?: DashboardViewParams, ...positional: string[]): Promise<unknown>;
        };
        /** Create a dashboard */
        create(...positional: string[]): Promise<unknown>;
        /** List dashboard revisions */
        revisions(params?: DashboardRevisionsParams, ...positional: string[]): Promise<unknown>;
        /** Restore a dashboard revision */
        restore(params: DashboardRestoreParams, ...positional: string[]): Promise<unknown>;
    widget: {
            /** Add a widget to a dashboard */
            add(params: DashboardWidgetAddParams, ...positional: string[]): Promise<unknown>;
            /** Edit a widget in a dashboard */
            edit(params?: DashboardWidgetEditParams, ...positional: string[]): Promise<unknown>;
            /** Delete a widget from a dashboard */
            delete(params?: DashboardWidgetDeleteParams, ...positional: string[]): Promise<unknown>;
    };
  };
  org: {
        /** List organizations */
        list(params?: OrgListParams): Promise<unknown>;
        /** View details of an organization */
        view(params?: OrgViewParams): Promise<unknown>;
  };
  project: {
        /** Create a new project */
        create(params?: ProjectCreateParams): Promise<unknown>;
        /** Delete a project */
        delete(params?: ProjectDeleteParams): Promise<unknown>;
        /** List projects */
        list(params?: ProjectListParams): Promise<unknown>;
        /** View details of a project */
        view(params?: ProjectViewParams): Promise<unknown>;
  };
  proguard: {
        /** Upload ProGuard/R8 mapping files to Sentry */
        upload(params?: ProguardUploadParams, ...positional: string[]): Promise<unknown>;
        /** Compute the UUID for a ProGuard mapping file */
        uuid(params?: ProguardUuidParams): Promise<unknown>;
  };
  replay: {
        /** List recent Session Replays */
        list(params?: ReplayListParams): Promise<ReplayListResult>;
        /** View a Session Replay */
        view(...positional: string[]): Promise<ReplayViewResult>;
  };
  release: {
        /** List releases with adoption and health metrics */
        list(params?: ReleaseListParams): Promise<unknown>;
        /** View release details with health metrics */
        view(params?: ReleaseViewParams): Promise<unknown>;
        /** Create a release */
        create(params?: ReleaseCreateParams): Promise<unknown>;
        /** Finalize a release */
        finalize(params?: ReleaseFinalizeParams): Promise<unknown>;
        /** Delete a release */
        delete(params?: ReleaseDeleteParams): Promise<unknown>;
        /** Archive a release */
        archive(params?: ReleaseArchiveParams): Promise<unknown>;
        /** Restore an archived release */
        restore(params?: ReleaseRestoreParams): Promise<unknown>;
        /** Create a deploy for a release */
        deploy(params?: ReleaseDeployParams): Promise<unknown>;
        /** List deploys for a release */
        deploys(params?: ReleaseDeploysParams): Promise<unknown>;
        /** Set commits for a release */
        "set-commits"(params?: ReleaseSetCommitsParams): Promise<unknown>;
        /** Propose a release version */
        "propose-version"(): Promise<unknown>;
  };
  repo: {
        /** List repositories */
        list(params?: RepoListParams): Promise<RepoListResult>;
  };
  team: {
        /** List teams */
        list(params?: TeamListParams): Promise<TeamListResult>;
  };
  issue: {
        /** List issues in a project */
        list(params?: IssueListParams): Promise<IssueListResult>;
        /** List events for a specific issue */
        events(params?: IssueEventsParams): Promise<IssueEventsResult>;
        /** Analyze an issue's root cause using Seer AI */
        explain(params?: IssueExplainParams): Promise<unknown>;
        /** Generate a solution plan using Seer AI */
        plan(params?: IssuePlanParams): Promise<unknown>;
        /** View details of a specific issue */
        view(params?: IssueViewParams): Promise<IssueViewResult>;
        /** Mark an issue as resolved */
        resolve(params?: IssueResolveParams): Promise<unknown>;
        /** Reopen a resolved issue */
        unresolve(params?: IssueUnresolveParams): Promise<unknown>;
        /** Archive (ignore) an issue */
        archive(params?: IssueArchiveParams): Promise<unknown>;
        /** Merge 2+ issues into a single canonical group */
        merge(params?: IssueMergeParams, ...positional: string[]): Promise<unknown>;
  };
  event: {
        /** View details of one or more events */
        view(params?: EventViewParams, ...positional: string[]): Promise<unknown>;
        /** List events for an issue */
        list(params?: EventListParams): Promise<EventListResult>;
        /** Send a Sentry event */
        send(params?: EventSendParams, ...positional: string[]): Promise<unknown>;
  };
  log: {
        /** List logs from a project */
        list: {
          (params: LogListParams & { follow: string }): AsyncIterable<unknown>;
          (params?: LogListParams, ...positional: string[]): Promise<LogListResult>;
        };
        /** View details of one or more log entries */
        view(...positional: string[]): Promise<unknown>;
  };
  monitor: {
        /** Wrap a command with cron monitor check-ins */
        run(params?: MonitorRunParams, ...positional: string[]): Promise<unknown>;
        /** List cron monitors */
        list(params?: MonitorListParams): Promise<MonitorListResult>;
  };
  sourcemap: {
        /** Inject debug IDs into JavaScript files and sourcemaps */
        inject(params?: SourcemapInjectParams): Promise<unknown>;
        /** Upload sourcemaps to Sentry */
        upload(params?: SourcemapUploadParams): Promise<unknown>;
        /** Resolve and report sourcemap linkage for JavaScript files */
        resolve(params?: SourcemapResolveParams): Promise<unknown>;
  };
  span: {
        /** List spans in a project or trace */
        list(params?: SpanListParams, ...positional: string[]): Promise<SpanListResult>;
        /** View details of specific spans */
        view(params?: SpanViewParams, ...positional: string[]): Promise<unknown>;
  };
  trace: {
        /** List recent traces in a project */
        list(params?: TraceListParams): Promise<TraceListResult>;
        /** View details of a specific trace */
        view(params?: TraceViewParams, ...positional: string[]): Promise<unknown>;
        /** View logs associated with a trace */
        logs(params?: TraceLogsParams, ...positional: string[]): Promise<unknown>;
  };
  trial: {
        /** List product trials */
        list(params?: TrialListParams): Promise<TrialListResult>;
        /** Start a product trial */
        start(params?: TrialStartParams): Promise<unknown>;
  };
  local: {
        /** Start the local dev server and tail events */
        serve(params?: LocalServeParams): Promise<unknown>;
        /** Run a command with the local dev server enabled */
        run(params?: LocalRunParams, ...positional: string[]): Promise<unknown>;
  };
};
