import type { UID, Modules } from '@strapi/types'; /** * Division of allowlists: * * - ALLOWED_DOCUMENT_PARAM_KEYS: keys that are passed through to the query builder * (transformParamsToQuery → convert-query-params). Only these affect the actual query. * Used by pickAllowedQueryParams() so unknown keys are stripped before the transformer. * * - ALLOWED_DOCUMENT_ROOT_PARAM_KEYS: keys we accept at the document service entry when * api.documents.strictParams is true (checkUnrecognizedRootParams). Must be a superset * of ALLOWED_DOCUMENT_PARAM_KEYS. Can include keys we accept but do not pass to the * query builder (e.g. REST-shaped keys that callers send; we allow them then strip). */ /** * Keys passed to the query-params transformer. = SHARED_QUERY_PARAM_KEYS + withCount. */ export declare const ALLOWED_DOCUMENT_PARAM_KEYS: readonly ["filters", "sort", "fields", "populate", "status", "locale", "page", "pageSize", "start", "limit", "_q", "hasPublishedVersion", "withCount"]; /** * Keys allowed at root when strictParams is true. = ALLOWED_DOCUMENT_PARAM_KEYS plus: * - data: create/update payload (never part of query params) * - pagination, count, ordering: REST-style keys core-api may pass; accepted then stripped (query builder uses flat page/pageSize/start/limit and does not use count/ordering at root) */ export declare const ALLOWED_DOCUMENT_ROOT_PARAM_KEYS: readonly ["filters", "sort", "fields", "populate", "status", "locale", "page", "pageSize", "start", "limit", "_q", "hasPublishedVersion", "withCount", "data", "pagination", "count", "ordering"]; /** Restrict to allowed query keys so only these reach the query-params transformer (security). */ export declare const pickAllowedQueryParams: (params: Record) => Record<(typeof ALLOWED_DOCUMENT_PARAM_KEYS)[number], unknown>; declare const pickSelectionParams: (data: unknown) => Modules.Documents.Params.Pick; export { pickSelectionParams }; //# sourceMappingURL=params.d.ts.map