import { Model } from '../../../model'; import { RelationQueryBuilder } from '../builders/relationQueryBuilder'; import { AttachResult } from '../results/attachResult'; import { ExtractModelAttributesType } from '../../../types/extractModelAttributesType'; import { DetachResult } from '../results/detachResult'; import { SyncResult } from '../results/syncResult'; import { ToggleResult } from '../results/toggleResult'; import { UpdatePivotResult } from '../results/updatePivotResult'; import { ExtractModelPersistedAttributesType } from '../../../types/extractModelPersistedAttributesType'; import { ExtractModelRelationsType } from '../../../types/extractModelRelationsType'; export declare class BelongsToMany, Attributes = ExtractModelAttributesType, PersistedAttributes = ExtractModelPersistedAttributesType, Relations = ExtractModelRelationsType> extends RelationQueryBuilder { attach(keys: Array, duplicates?: boolean): Promise; attachWithFields(resources: Record, duplicates?: boolean): Promise; detach(keys: Array): Promise; detachWithFields(resources: Record): Promise; sync(keys: Array, detaching?: boolean): Promise; syncWithFields(resources: Record, detaching?: boolean): Promise; toggle(keys: Array): Promise; toggleWithFields(resources: Record): Promise; updatePivot(key: number | string, pivot: Pivot): Promise; }