import { type EntityName, type ManyToManyOptions } from '@mikro-orm/core';
/** Defines a many-to-many relationship (legacy TypeScript decorator). */
export declare function ManyToMany<Target extends object, Owner extends object>(
  entity: () => EntityName<Target>,
  mappedBy?: (string & keyof Target) | ((e: Target) => any),
  options?: Partial<ManyToManyOptions<Owner, Target>>,
): (target: Owner, propertyName: keyof Owner) => void;
export declare function ManyToMany<Target extends object, Owner extends object>(entity: string, options?: any): never;
export declare function ManyToMany<Target extends object, Owner extends object>(
  options?: ManyToManyOptions<Owner, Target>,
): (target: Owner, propertyName: keyof Owner) => void;
