import { ClickUpClient } from './index.js';
export interface List {
    id: string;
    name: string;
}
export interface GetListsParams {
}
export interface CreateListParams {
    name: string;
}
export interface UpdateListParams {
    name?: string;
}
export declare class ListsClient {
    private client;
    constructor(client: ClickUpClient);
    /**
     * Get lists from a specific space
     * @param spaceId The ID of the space to get lists from
     * @param params Optional parameters for filtering lists
     * @returns A list of lists
     */
    getListsFromSpace(spaceId: string, params?: GetListsParams): Promise<{
        lists: List[];
    }>;
    /**
     * Get lists from a specific folder
     * @param folderId The ID of the folder to get lists from
     * @param params Optional parameters for filtering lists
     * @returns A list of lists
     */
    getListsFromFolder(folderId: string, params?: GetListsParams): Promise<{
        lists: List[];
    }>;
    /**
     * Create a new list in a folder
     * @param folderId The ID of the folder to create the list in
     * @param params The list parameters
     * @returns The created list
     */
    createListInFolder(folderId: string, params: CreateListParams): Promise<List>;
    /**
     * Create a new folderless list in a space
     * @param spaceId The ID of the space to create the list in
     * @param params The list parameters
     * @returns The created list
     */
    createFolderlessList(spaceId: string, params: CreateListParams): Promise<List>;
    /**
     * Get a specific list by ID
     * @param listId The ID of the list to get
     * @returns The list details
     */
    getList(listId: string): Promise<List>;
    /**
     * Update an existing list
     * @param listId The ID of the list to update
     * @param params The list parameters to update
     * @returns The updated list
     */
    updateList(listId: string, params: UpdateListParams): Promise<List>;
    /**
     * Delete a list
     * @param listId The ID of the list to delete
     * @returns Success message
     */
    deleteList(listId: string): Promise<{
        success: boolean;
    }>;
    /**
     * Add a task to a list
     * @param listId The ID of the list to add the task to
     * @param taskId The ID of the task to add
     * @returns Success message
     */
    addTaskToList(listId: string, taskId: string): Promise<{
        success: boolean;
    }>;
    /**
     * Remove a task from a list
     * @param listId The ID of the list to remove the task from
     * @param taskId The ID of the task to remove
     * @returns Success message
     */
    removeTaskFromList(listId: string, taskId: string): Promise<{
        success: boolean;
    }>;
    /**
     * Create a new list from a template in a folder
     * @param folderId The ID of the folder to create the list in
     * @param templateId The ID of the template to use
     * @param params The list parameters
     * @returns The created list
     */
    createListFromTemplateInFolder(folderId: string, templateId: string, params: CreateListParams): Promise<List>;
    /**
     * Create a new list from a template in a space
     * @param spaceId The ID of the space to create the list in
     * @param templateId The ID of the template to use
     * @param params The list parameters
     * @returns The created list
     */
    createListFromTemplateInSpace(spaceId: string, templateId: string, params: CreateListParams): Promise<List>;
}
export declare const createListsClient: (client: ClickUpClient) => ListsClient;
