import type { Model, Schema } from 'mongoose'; export interface NestedAliasesMap { __selfAlias?: string; [userFieldName: string]: string | NestedAliasesMap | undefined; } export type AliasesMap = Record; export declare function prepareAliases(model: Model): AliasesMap | false; export declare function prepareAliasesReverse(schema: Schema): AliasesMap | false; export declare function replaceAliases(data: Record, aliases?: NestedAliasesMap): Record; export declare function prepareNestedAliases(schema: Schema, preparedAliases?: Map, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, { [x: number]: unknown; [x: symbol]: unknown; [x: string]: unknown; }, import("mongoose").Document> & Omit<{ [x: number]: unknown; [x: symbol]: unknown; [x: string]: unknown; } & Required<{ _id: unknown; }> & { __v: number; }, "id"> & { id: string; }, { [path: string]: import("mongoose").SchemaDefinitionProperty; } | { [x: string]: import("mongoose").SchemaDefinitionProperty> & Omit<{ [x: number]: unknown; [x: symbol]: unknown; [x: string]: unknown; } & Required<{ _id: unknown; }> & { __v: number; }, "id"> & { id: string; }> | undefined; }, {} & Required<{ _id: unknown; }> & { __v: number; }>, NestedAliasesMap | undefined>): NestedAliasesMap | undefined; //# sourceMappingURL=aliases.d.ts.map