import { SingleAssociationAccessors, Transactionable } from 'sequelize'; import { Model } from '../model'; import { Appends, Except, Fields, Filter, TargetKey, UpdateOptions } from '../repository'; import { RelationRepository } from './relation-repository'; export interface SingleRelationFindOption extends Transactionable { fields?: Fields; except?: Except; appends?: Appends; filter?: Filter; targetCollection?: string; } interface SetOption extends Transactionable { tk?: TargetKey; } export declare abstract class SingleRelationRepository extends RelationRepository { abstract filterOptions(sourceModel: any): any; remove(options?: Transactionable): Promise; set(options: TargetKey | SetOption): Promise; find(options?: SingleRelationFindOption): Promise; findOne(options?: SingleRelationFindOption): Promise>; destroy(options?: Transactionable): Promise; update(options: UpdateOptions): Promise; accessors(): SingleAssociationAccessors; } export {};