import { ApiConfig, ApiNamespace } from '../client';
import { Comment, CommentSortByBase, List, ListItem, ListItemType, ListLike, PopularTrendingList } from '../trakt';
import { ApiResponse, Pagination } from '../utils';
/**
 * Lists api namespace
 */
export declare class Lists implements ApiNamespace {
    config: ApiConfig;
    constructor(config: ApiConfig);
    /**
     * Returns all lists with the most likes and comments over the last 7 days.
     * @param pagination
     * @returns lists
     */
    trending({ pagination }: {
        pagination: Pagination;
    }): Promise<ApiResponse<PopularTrendingList[]>>;
    /**
     * Returns the most popular lists.
     * @param pagination
     * @returns lists
     */
    popular({ pagination }: {
        pagination: Pagination;
    }): Promise<ApiResponse<PopularTrendingList[]>>;
    /**
     * Returns a single list.
     * @param id list id
     * @returns list
     */
    getList({ id }: {
        id: string;
    }): Promise<ApiResponse<List>>;
    /**
     * Returns all users who liked a list.
     * @param id list id
     * @param pagination
     * @returns
     */
    getLikes({ id, pagination }: {
        id: string;
        pagination: Pagination;
    }): Promise<ApiResponse<ListLike[]>>;
    /**
     * Get all items on a personal list.
     * @param id list id
     * @param type
     * @param pagination
     * @returns
     */
    getItems({ id, pagination, type, }: {
        id: string;
        pagination?: Pagination;
        type?: ListItemType;
    }): Promise<ApiResponse<ListItem[]>>;
    /**
     * Returns all top level comments for a list.
     * @param id list id
     * @param sort
     * @param pagination
     * @returns
     */
    getComments({ id, pagination, sort, }: {
        id: string;
        pagination: Pagination;
        sort?: CommentSortByBase;
    }): Promise<ApiResponse<Comment[]>>;
}
//# sourceMappingURL=index.d.ts.map