import { GenericCrudResult } from "../../../../../fd-toolbox/types/crud/crud-result";
import { CrudUpdateConfig } from "./crud-update-config";
import { ResourceMeta } from "../../../core/resource-meta";
import { WithId } from "../../../../../fd-toolbox-core/types/resource-with-id";
/**
 * Configuration object passed to pre-update CRUD event handlers.
 * Used to provide context and results to custom logic before a resource is updated.
 */
export interface PreUpdateCrudHandlerConfig<T extends WithId = WithId> {
    /** The result object for the update operation (can be mutated) */
    crudServiceResult: GenericCrudResult<T>;
    /** The resource object after modification */
    modifiedResource: T;
    /** The configuration for the update operation */
    crudUpdateConfig: CrudUpdateConfig<T>;
    /** Metadata for the resource type */
    resourceMeta: ResourceMeta;
    /** The resource object before modification */
    originalResource?: T;
}
