import Endpoint, { SearchParams } from "../components/Endpoint";
import { FormattedResponse } from "../components/RequestQueue";
import APIPool, { APIPoolCategory } from "../responses/APIPool";
export default class PoolsEndpoint extends Endpoint<APIPool> {
    Category: typeof APIPoolCategory;
    protected searchParams: string[];
    protected searchParamAliases: {
        name: string;
        description: string;
    };
    /**
     * Fetches pool data based on provided parameters
     * @param {PoolSearchParams} search Search parameters
     * @returns {FormattedResponse<APIPool[]>} Tag data
     */
    find(search?: PoolSearchParams): Promise<FormattedResponse<APIPool>>;
}
interface PoolSearchParams extends SearchParams {
    creator_name?: string;
    is_active?: boolean;
    order?: PoolSearchOrder;
    id?: number;
    creator_id?: number;
    category?: APIPoolCategory;
    name?: string;
    description?: string;
}
declare enum PoolSearchOrder {
    UpdatedAt = "updated_at",
    CreatedAt = "created_at",
    Name = "name",
    PostCount = "post_count"
}
export {};
