/**
 * Ant-only subcommand stubs.
 *
 * The upstream codebase this fork derives from exposed a set of
 * `[ANT-ONLY]` commands (log, error, export, task *) wired through
 * `handlers/ant.ts`. Those commands are gated behind compile-time-false
 * checks in registerCommands (`'external' === 'ant'`) so they're never
 * reachable at runtime — but TypeScript still resolves the imports and
 * errored out (~10 TS2307 occurrences) when the file didn't exist.
 *
 * These stubs make typecheck clean without altering behavior. If this
 * fork ever ports the ant-only surface, replace the stubs with real
 * implementations (or delete the command registrations).
 */

function notImplemented(name: string): never {
  throw new Error(`${name} is ant-only and not available in this fork`)
}

export async function logHandler(_logId: string | number | undefined): Promise<void> {
  notImplemented('logHandler')
}

export async function errorHandler(_number: number | undefined): Promise<void> {
  notImplemented('errorHandler')
}

export async function exportHandler(_source: string, _outputFile: string): Promise<void> {
  notImplemented('exportHandler')
}

export async function completionHandler(..._args: unknown[]): Promise<void> {
  notImplemented('completionHandler')
}

export async function taskCreateHandler(
  _subject: string,
  _opts: { description?: string; list?: string },
): Promise<void> {
  notImplemented('taskCreateHandler')
}

export async function taskListHandler(_opts: {
  list?: string
  pending?: boolean
  json?: boolean
}): Promise<void> {
  notImplemented('taskListHandler')
}

export async function taskGetHandler(_id: string, _opts: { list?: string }): Promise<void> {
  notImplemented('taskGetHandler')
}

export async function taskUpdateHandler(..._args: unknown[]): Promise<void> {
  notImplemented('taskUpdateHandler')
}

export async function taskDirHandler(..._args: unknown[]): Promise<void> {
  notImplemented('taskDirHandler')
}
