/**
 * Object transformation utilities
 * Pure functions for deep object manipulation
 */
/**
 * Recursively extend a field in a nested object
 * If the field is an array, appends unique values
 * If the field is an object, merges properties
 *
 * @param obj - The object to search and extend
 * @param targetField - The field name to find and extend
 * @param newValue - The value(s) to add
 * @returns true if field was found and extended, false otherwise
 *
 * @example
 * const obj = { schema: { items: ['a', 'b'] } };
 * extendField(obj, 'items', ['c', 'd']);
 * // obj.schema.items is now ['a', 'b', 'c', 'd']
 */
export declare const extendField: (obj: any, targetField: string, newValue: any) => boolean;
/**
 * Deep transform an object using a transformer specification
 * Supports function transformers, nested object transformers, and literal values
 *
 * @param obj - The source object to transform
 * @param transformers - Specification object where:
 *   - function values: called with current value, result used as new value
 *   - object values: recursively applied to nested objects
 *   - other values: used directly as the new value
 * @returns New transformed object (original is not mutated)
 *
 * @example
 * const obj = { name: 'hero', count: 5 };
 * const result = deepTransform(obj, {
 *   name: (v) => v.toUpperCase(),
 *   count: (v) => v * 2,
 * });
 * // result: { name: 'HERO', count: 10 }
 *
 * @example
 * // Nested transformation
 * const obj = { schema: { title: 'old' } };
 * const result = deepTransform(obj, {
 *   schema: { title: 'new' }
 * });
 * // result: { schema: { title: 'new' } }
 */
export declare function deepTransform(obj: any, transformers: any): any;
/**
 * Check if a component has content available as bloks
 *
 * @param component - Storyblok component schema
 * @returns true if component.schema.content is a bloks field with whitelist
 */
export declare const isContentAvailableAsBloks: (component: any) => boolean;
/**
 * Check if a component has items available as bloks
 *
 * @param component - Storyblok component schema
 * @returns true if component.schema.items is a bloks field with whitelist
 */
export declare const isItemsAvailableAsBloks: (component: any) => boolean;
