/**
 * Shared ClickUp param/result types (browser-safe)
 *
 * These types define the public interface for ClickUp operations -- used by both
 * the server-side adapter and the SDK typed wrappers. They contain zero Node.js
 * dependencies and are safe to import in any environment.
 *
 * Server-internal types (credentials, retry logic) remain in
 * server/adapters/clickup/clickup-adapter.ts
 */

// ============================================================================
// Verify
// ============================================================================

/**
 * Verify ClickUp credentials parameters
 */
export interface ClickUpVerifyParams {
  /** No params required -- verification is credential-only */
  _?: never
}

/**
 * Verify ClickUp credentials result
 */
export interface ClickUpVerifyResult {
  ok: true
  provider: 'clickup'
  teamCount: number
  teams: Array<{
    id: string
    name: string
  }>
}

// ============================================================================
// Create Task
// ============================================================================

/**
 * Create ClickUp task parameters
 */
export interface ClickUpCreateTaskParams {
  listId: string
  name: string
  markdownContent: string
}

/**
 * Create ClickUp task result
 */
export interface ClickUpCreateTaskResult {
  id: string
  url?: string
  name: string
}
