import type { HttpRequest } from "@adonisjs/core/http";
export default class Request {
    protected request: HttpRequest;
    constructor(request: HttpRequest);
    input(key: string, defaultValue?: any): any;
    columns(): string[];
    isSearchable(): boolean;
    isRegex(index: number): boolean;
    orderableColumns(): Record<string, any>[];
    isOrderable(): boolean;
    isColumnOrderable(index: number): boolean;
    searchableColumnIndex(): number[];
    isColumnSearchable(index: number, columnSearch?: boolean): boolean;
    columnKeyword(index: number): string;
    prepareKeyword(keyword: number | string | string[]): string;
    keyword(): string;
    columnName(index: number): string | undefined;
    /**
     * Determine whether the column has any active ColumnControl search payload.
     *
     * @see https://datatables.net/extensions/columncontrol/server-side
     */
    hasColumnControl(index: number): boolean;
    /**
     * The input based search payload (searchText, searchNumber, searchDateTime).
     */
    columnControlSearch(index: number): {
        value: string;
        logic: string;
        type: string;
        mask?: string;
    } | null;
    /**
     * The list of selected values used by the searchList content type.
     */
    columnControlList(index: number): any[];
    hasColumnControlList(index: number): boolean;
    isPaginationable(): boolean;
    start(): number;
    length(): number;
    draw(): number;
    all(): Record<string, any>;
}
