/** * @athenna/database * * (c) João Lenon * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ import type { BaseModel } from '#src/models/BaseModel'; import type { HasOneThroughOptions } from '#src/types'; import type { Driver } from '#src/database/drivers/Driver'; export declare class HasOneThroughRelation { /** * Load a has one through relation. */ static load(model: BaseModel, relation: HasOneThroughOptions): Promise; /** * Load all models that has one through relation. */ static loadAll(models: BaseModel[], relation: HasOneThroughOptions): Promise; /** * Apply a where has relation to the query when the given model * has one through relation. */ static whereHas(Model: typeof BaseModel, query: Driver, relation: HasOneThroughOptions): void; }