/**
 * Base Query DTO - Universal for all entities
 * Auto-transforms HTTP parameters to ICriteria format
 */
import { ICriteria } from '../../types/repository.types';
export declare class BaseQueryDto {
    page?: number;
    limit?: number;
    include?: string;
    sort?: string;
    search?: string;
    status?: 'active' | 'inactive' | 'deleted';
    /**
     * Auto-transform DTO to ICriteria with unified include handling
     */
    toICriteria(): ICriteria<any>;
    /**
     * Parse unified include parameter into potential relations and fields
     * Repository will validate which items are actual relations using auto-discovery
     */
    protected parseInclude(includeStr?: string): {
        relations: string[];
        fields: string[];
    };
    /**
     * Basic heuristic to determine if an item looks like a relation
     * Repository auto-discovery will provide final validation
     */
    private looksLikeRelation;
    protected parseSortString(sortStr?: string): Record<string, 'ASC' | 'DESC'> | undefined;
    protected buildWhereClause(): any;
}
