/** * Input accepted by {@link buildSpaceReputationParams}: either the new * `spaceReputation` object or the deprecated flat props. * * The flat inputs accept `null` (in addition to `undefined`) because the * entity-lists path persists them as `string | null` / `boolean | null` and * passes `null` through to mean "explicitly unset". `null` is treated as unset. */ export interface BuildSpaceReputationParamsInput { spaceReputation?: { spaceId: string | "none" | "context"; includeDescendants?: boolean; }; /** * @deprecated Pass `spaceReputation` instead. Accepted for back-compat. */ spaceReputationId?: string | null; /** * @deprecated Pass `spaceReputation` instead. Accepted for back-compat. */ spaceReputationDescendants?: boolean | null; } /** * Flat output handed to the query-string serializer. Both keys are omitted * when unset — never bracketed, never nested. */ export interface SpaceReputationFlatParams { spaceReputationId?: string; spaceReputationDescendants?: boolean; } /** * Normalize the `spaceReputation` object or the deprecated flat props down to * the flat query params the server understands * (`spaceReputationId` / `spaceReputationDescendants`). * * Rules: * - **Object wins when present.** "Present" means the `spaceReputation` key was * supplied at all (`spaceReputation !== undefined`) — even `{}` or a partial * object suppresses the flat props, because supplying the key is an explicit * opt-in to the new form. * - When **both** the object and a flat prop are supplied, the object wins and * a one-time dev-only `console.warn` fires (never throws). * - The flat inputs tolerate `null` (treated as unset → param omitted). * - Output keys are omitted when unset; the result is always the two flat keys, * never a bracketed/nested object. */ export declare function buildSpaceReputationParams(input: BuildSpaceReputationParamsInput): SpaceReputationFlatParams;