import Attribute from "../entities/attribute";
import AttributeGroup from "../entities/attribute-group";
import IFactory from "../interfaces/factory";
import type Model from "../model";
import { TAttribute } from "../types";
import AttributeGroupFactory from "./attribute-group";
export default class AttributeFactory implements IFactory<Attribute> {
    private model;
    constructor(model: Model);
    group: AttributeGroupFactory;
    create(attributeGroup: AttributeGroup): Attribute;
    extract(criteria: Partial<TAttribute>): Promise<Attribute | undefined>;
    extractAll(criteria: Partial<TAttribute>): Promise<Attribute[]>;
    private createEntityFromRowData;
}
