UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

89 lines 3.29 kB
import { type TodoListParams, type TodoGetParams, type TodoResponse, type TodoListResponse } from '../schemas'; import type { Basecamp2Client } from '../client'; type ExecuteRequest = Basecamp2Client['executeRequest']; /** * Creates the todos resource methods * OpenAPI Path: /todos → todos.* * @description Methods for managing Basecamp2 todos */ export declare function createTodosResource(executeRequest: ExecuteRequest): { /** * List all todos with pagination * * @fullPath api.basecamp2.todos.list * @service basecamp2 * @domain project-management * @dataMethod todosData.list * @discoverable true * @searchTerms ["todos", "tasks", "list", "basecamp", "project management"] * * @param params List parameters including pagination and ordering * @returns Promise<TodoListResponse> Paginated list of todos */ list: (params: TodoListParams) => Promise<TodoListResponse>; /** * Get a specific todo by ID * * @fullPath api.basecamp2.todos.get * @service basecamp2 * @domain project-management * @dataMethod todosData.get * @discoverable true * @searchTerms ["todo", "task", "get", "details", "basecamp"] * * @param id Todo ID * @param params Request parameters with site ID * @returns Promise<TodoResponse> Todo details */ get: (id: number, params: TodoGetParams) => Promise<TodoResponse>; }; /** * Creates the todosData resource methods (data-only versions) */ export declare function createTodosDataResource(todos: ReturnType<typeof createTodosResource>): { /** * List todos data without full response metadata * * @fullPath api.basecamp2.todosData.list * @service basecamp2 * @domain project-management * @discoverable true * * @param params List parameters * @returns Promise<TodoData[]> Array of todo data objects */ list: (params: TodoListParams) => Promise<import("zod").objectOutputType<{ id: import("zod").ZodNumber; title: import("zod").ZodOptional<import("zod").ZodString>; content: import("zod").ZodOptional<import("zod").ZodString>; completed: import("zod").ZodOptional<import("zod").ZodBoolean>; created_at: import("zod").ZodOptional<import("zod").ZodString>; updated_at: import("zod").ZodOptional<import("zod").ZodString>; }, import("zod").ZodTypeAny, "passthrough">[]>; /** * Get todo data without full response metadata * * @fullPath api.basecamp2.todosData.get * @service basecamp2 * @domain project-management * @discoverable true * * @param id Todo ID * @param params Request parameters * @returns Promise<TodoData> Todo data object */ get: (id: number, params: TodoGetParams) => Promise<{ id: number; title?: string | undefined; completed?: boolean | undefined; created_at?: string | undefined; updated_at?: string | undefined; content?: string | undefined; } & { [k: string]: unknown; }>; }; export type TodosResource = ReturnType<typeof createTodosResource>; export type TodosDataResource = ReturnType<typeof createTodosDataResource>; export {}; //# sourceMappingURL=todos.d.ts.map