import { ODataRequestConfig } from './odata-request-config';
import type { EntityBase } from '../entity-base';
import type { Selectable } from '../selectable';
import type { Filterable } from '../filter';
import type { Expandable } from '../expandable';
import type { Orderable } from '../order';
import type { ODataUri } from '../uri-conversion';
import type { DeSerializers } from '../de-serializers';
import type { EntityApi } from '../entity-api';
import type { WithGetAllRestrictions } from './odata-request-traits';
/**
 * OData getAll request configuration for an entity type.
 * @template EntityT - Type of the entity to setup a request for.
 */
export declare class ODataGetAllRequestConfig<EntityT extends EntityBase, DeSerializersT extends DeSerializers> extends ODataRequestConfig implements WithGetAllRestrictions<EntityT, DeSerializersT> {
    readonly entityApi: EntityApi<EntityT, DeSerializersT>;
    private oDataUri;
    top: number;
    skip: number;
    filter: Filterable<EntityT, DeSerializersT>;
    orderBy: Orderable<EntityT>[];
    selects: Selectable<EntityT, DeSerializersT>[];
    expands: Expandable<EntityT, DeSerializersT, EntityApi<EntityBase, DeSerializersT>>[];
    /**
     * Creates an instance of ODataGetAllRequestConfig.
     * @param entityApi - Entity API for building and executing the request.
     * @param oDataUri - URI conversion functions.
     */
    constructor(entityApi: EntityApi<EntityT, DeSerializersT>, oDataUri: ODataUri<DeSerializersT>);
    resourcePath(): string;
    queryParameters(): Record<string, any>;
}
