import type { App } from "../core/app.js";
import type { Collection } from "../core/collection_model.js";
import type { RequestEvent, RequestInfo } from "../core/event_request.js";
import { Record as RecordModel } from "../core/record_model.js";
export declare const ErrMFA: Error;
export declare function execAfterSuccessTx(_checkTx: boolean, _app: App, fn: () => Response | Promise<Response>): Promise<Response>;
export declare function checkForSuperuserOnlyRuleFields(requestInfo: RequestInfo): string | null;
export declare function RecordAuthResponse(event: RequestEvent, authRecord: RecordModel, authMethod: string, meta: unknown): Promise<Response>;
export declare function RecordAuthResponseWithToken(event: RequestEvent, authRecord: RecordModel, token: string, authMethod: string, meta: unknown): Promise<Response>;
export declare function EnrichRecord(event: RequestEvent, record: RecordModel, ...defaultExpands: string[]): Promise<Error | null>;
export declare function EnrichRecords(event: RequestEvent, records: RecordModel[], ...defaultExpands: string[]): Promise<Error | null>;
export declare function triggerRecordEnrichHooks(app: App, requestInfo: RequestInfo, records: RecordModel[], finalizer: (() => Error | null) | null): Error | null;
export declare function expandFetch(app: App, originalRequestInfo: RequestInfo): (relCollection: Collection, relIds: string[]) => RecordModel[];
