import { ArrayReflector, Class } from '@nestjs-query/core'; import { RelationsOpts, ResolverRelation } from '../resolvers/relations'; import { BaseResolverOptions } from './resolver-method.decorator'; export declare const reflector: ArrayReflector; export declare type RelationDecoratorOpts = Omit, 'DTO'>; export declare type RelationTypeFunc = () => Class; export declare type RelationClassDecorator = >(DTOClass: Cls) => Cls | void; export declare function getRelations(DTOClass: Class, opts?: BaseResolverOptions): RelationsOpts; export declare const Relation: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const FilterableRelation: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const UnPagedRelation: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const FilterableUnPagedRelation: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const OffsetConnection: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const FilterableOffsetConnection: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const CursorConnection: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator; export declare const FilterableCursorConnection: (name: string, relationTypeFunc: RelationTypeFunc, options?: RelationDecoratorOpts | undefined) => RelationClassDecorator;