import { EntityDeleteOptions, UserInfo } from '@memberjunction/core';
/**
 * Entity CRUD Implementation Functions for REST endpoints
 * These functions contain the detailed implementation for entity operations
 */
export declare class EntityCRUDHandler {
    /**
     * Create a new entity
     */
    static createEntity(entityName: string, data: any, user: UserInfo): Promise<{
        success: boolean;
        entity?: any;
        error?: string;
        details?: any;
        validationErrors?: any[];
    }>;
    /**
     * Read an entity by ID
     */
    static getEntity(entityName: string, id: string | number, relatedEntities: string[], user: UserInfo): Promise<{
        success: boolean;
        entity?: any;
        error?: string;
    }>;
    /**
     * Update an existing entity
     */
    static updateEntity(entityName: string, id: string | number, data: any, user: UserInfo): Promise<{
        success: boolean;
        entity?: any;
        error?: string;
        details?: any;
        validationErrors?: any[];
    }>;
    /**
     * Delete an entity
     */
    static deleteEntity(entityName: string, id: string | number, options: EntityDeleteOptions, user: UserInfo): Promise<{
        success: boolean;
        error?: string;
        details?: any;
    }>;
    /**
     * Helper method to create a composite key from an ID
     */
    private static createCompositeKeyFromId;
}
//# sourceMappingURL=EntityCRUDHandler.d.ts.map