import { type IBaseObject, type IBaseObjectOptions } from "../../common/baseObject/IBaseObject";
import BaseObject = AltVServer.BaseObject;
import { BaseObjectType } from "../../../../shared";
export interface IAltVBaseObjectOptions<T extends BaseObject> extends IBaseObjectOptions {
    mpEntity: T;
}
export declare abstract class AltVBaseObject<T extends BaseObject> implements IBaseObject {
    private readonly _mpEntity;
    get id(): number;
    get type(): BaseObjectType;
    get isExists(): boolean;
    protected get mpEntity(): T;
    protected constructor(options: IAltVBaseObjectOptions<T>);
    destroy(): void;
}
