import IDatabase from "../../interfaces/database";
import IModel from "../../interfaces/model";
import { TAttribute } from "../../types";
import AttributeDescriptionModel from "./attribute-description";
import AttributeGroupModel from "./attribute-group";
export default class AttributeModel implements IModel<TAttribute> {
    private database;
    constructor(database: IDatabase);
    private table;
    group: AttributeGroupModel;
    description: AttributeDescriptionModel;
    select(criteria: Partial<TAttribute>): Promise<any[]>;
    insert(data: Partial<TAttribute>): Promise<import("../../types").TResponseHeaders>;
    update(criteria: Partial<TAttribute>, data: Partial<TAttribute>): Promise<import("../../types").TResponseHeaders>;
    delete(criteria: Partial<TAttribute>): Promise<import("../../types").TResponseHeaders>;
}
