/** * User, stream, and task query methods */ import type { Stream, Task, User } from '../../types/index.js'; import { SunsamaClientBase } from '../base.js'; export declare abstract class UserMethods extends SunsamaClientBase { /** * Gets the current user information * * @returns The current user data * @throws SunsamaAuthError if not authenticated or request fails */ getUser(): Promise; /** * Gets the user's timezone * * @returns The user's timezone string (e.g., "America/New_York") * @throws SunsamaAuthError if not authenticated or request fails */ getUserTimezone(): Promise; /** * Gets streams for the user's group * * @returns Array of streams for the user's group * @throws SunsamaAuthError if not authenticated or request fails */ getStreamsByGroupId(): Promise; /** * Gets tasks for a specific day * * @param day - ISO date string (e.g., "2025-05-31") * @param timezone - Timezone string (e.g., "America/New_York", defaults to user's timezone) * @returns Array of tasks for the specified day * @throws SunsamaAuthError if not authenticated or request fails */ getTasksByDay(day: string, timezone?: string): Promise; /** * Gets tasks from the backlog * * @returns Array of backlog tasks * @throws SunsamaAuthError if not authenticated or request fails */ getTasksBacklog(): Promise; /** * Gets archived tasks for the user * * @param offset - Pagination offset (defaults to 0) * @param limit - Maximum number of tasks to return (defaults to 300) * @returns Array of archived tasks * @throws SunsamaAuthError if not authenticated or request fails */ getArchivedTasks(offset?: number, limit?: number): Promise; /** * Gets a specific task by its ID * * @param taskId - The ID of the task to retrieve * @returns The task if found, null if not found * @throws SunsamaAuthError if not authenticated or request fails * * @example * ```typescript * const task = await client.getTaskById('685022edbdef77163d659d4a'); * if (task) { * console.log('Task found:', task.text); * } else { * console.log('Task not found'); * } * ``` */ getTaskById(taskId: string): Promise; } //# sourceMappingURL=user.d.ts.map