import { IProductGroupAttr } from '../../interfaces/product-group-attr.interface';
import { StatusEnum } from './enum/status.enum';
import { LoginUser } from '@tomei/sso';
import { ObjectBase } from '@tomei/general';
interface IProductGroupInitParam {
    code?: string;
    groupInfo?: IProductGroupAttr;
}
export declare class ProductGroup extends ObjectBase {
    ObjectId: string;
    ObjectName: string;
    TableName: string;
    ObjectType: string;
    Code: string;
    Name: string;
    Description: string;
    private _Status;
    private _CreatedById;
    private _CreatedAt;
    private _UpdatedById;
    private _UpdatedAt;
    private static _Repo;
    get Status(): StatusEnum;
    set Status(value: StatusEnum);
    get CreatedById(): string;
    set CreatedById(value: string);
    get CreatedAt(): Date;
    set CreatedAt(value: Date);
    get UpdatedById(): string;
    set UpdatedById(value: string);
    get UpdatedAt(): Date;
    set UpdatedAt(value: Date);
    private constructor();
    static init(options?: IProductGroupInitParam): Promise<ProductGroup>;
    create(loginUser: LoginUser, dbTransaction?: any): Promise<any>;
    update(loginUser: LoginUser, groupInfo: IProductGroupAttr, dbTransaction?: any): Promise<any>;
    delete(loginUser: LoginUser, dbTransaction?: any): Promise<any>;
    static findAll(loginUser: LoginUser, dbTransaction?: any, page?: number, rows?: number, search?: {}): Promise<any>;
}
export {};
