import { BaseRecord, BaseResource, Filter } from 'adminjs'; import { LucidModel, ModelQueryBuilderContract } from '@adonisjs/lucid/types/model'; import LucidResource from './lucid_resource.js'; import Property from './property.js'; declare class Resource extends BaseResource { protected lucidResource: LucidResource; protected propertiesMap: Map; protected model: LucidModel; constructor(lucidResource: LucidResource); static isAdapterFor(lucidResource: any): boolean; id(): string; name(): string; databaseType(): "mssql" | "mysql" | "oracledb" | "postgres" | "redshift" | "sqlite3" | "better-sqlite3"; databaseName(): string; properties(): Property[]; property(path: string): Property | null; findOne(id: string): Promise; find(filter: Filter, options: { limit?: number | undefined; offset?: number | undefined; sort?: { sortBy?: string | undefined; direction?: 'asc' | 'desc' | undefined; } | undefined; }): Promise; findMany(ids: string[]): Promise; count(filter: Filter): Promise; create(params: Record): Promise; delete(id: string): Promise; update(id: string, params?: Record): Promise; protected applyFilters(query: ModelQueryBuilderContract, filter: Filter): ModelQueryBuilderContract; } export default Resource;