@adonisjs/lucid
Version:
SQL ORM built on top of Active Record pattern
24 lines (23 loc) • 1.13 kB
TypeScript
import { ManyToManyRelationContract, LucidModel, LucidRow, ModelObject } from '@ioc:Adonis/Lucid/Orm';
import { RelationCallback, FactoryModelContract, FactoryRelationContract, FactoryBuilderQueryContract } from '@ioc:Adonis/Lucid/Factory';
import { BaseRelation } from './Base';
/**
* Many to many factory relation
*/
export declare class ManyToMany extends BaseRelation implements FactoryRelationContract {
relation: ManyToManyRelationContract<LucidModel, LucidModel>;
private attributesForPivotTable;
constructor(relation: ManyToManyRelationContract<LucidModel, LucidModel>, factory: () => FactoryBuilderQueryContract<FactoryModelContract<LucidModel>>);
/**
* Make relationship and set it on the parent model instance
*/
make(parent: LucidRow, callback?: RelationCallback, count?: number): Promise<void>;
/**
* Define pivot attributes
*/
pivotAttributes(attributes: ModelObject | ModelObject[]): this;
/**
* Persist relationship and set it on the parent model instance
*/
create(parent: LucidRow, callback?: RelationCallback, count?: number): Promise<void>;
}