import { EntityDeleteOptions, UserInfo } from '@memberjunction/core';
export declare class EntityCRUDHandler {
    static createEntity(entityName: string, data: any, user: UserInfo): Promise<{
        success: boolean;
        entity?: any;
        error?: string;
        details?: any;
        validationErrors?: any[];
    }>;
    static getEntity(entityName: string, id: string | number, relatedEntities: string[], user: UserInfo): Promise<{
        success: boolean;
        entity?: any;
        error?: string;
    }>;
    static updateEntity(entityName: string, id: string | number, data: any, user: UserInfo): Promise<{
        success: boolean;
        entity?: any;
        error?: string;
        details?: any;
        validationErrors?: any[];
    }>;
    static deleteEntity(entityName: string, id: string | number, options: EntityDeleteOptions, user: UserInfo): Promise<{
        success: boolean;
        error?: string;
        details?: any;
    }>;
    private static createCompositeKeyFromId;
}
//# sourceMappingURL=EntityCRUDHandler.d.ts.map