import { ElementRef, ViewContainerRef, TemplateRef, SimpleChanges } from "@angular/core";
import type { BuilderBlock } from "../../types/builder-block";
import * as i0 from "@angular/core";
export type BlocksWrapperProps = {
    blocks: BuilderBlock[] | undefined;
    parent: string | undefined;
    path: string | undefined;
    styleProp: Record<string, any> | undefined;
    /**
     * The element that wraps each list of blocks. Defaults to a `div` element ('ScrollView' in React Native).
     */
    BlocksWrapper: any;
    /**
     * Props to be applied to the wrapping element of blocks. Can be set in two ways:
     * 1. Globally via `<Content blocksWrapperProps={{...}}/>` - applies to all blocks wrappers in the Content
     * 2. Locally via `<Blocks BlocksWrapperProps={{...}}/>` - applies only to this specific blocks instance and overrides global props
     *
     * For merging both global and local props, spread the context props before adding your own:
     * ```
     * <Blocks
     *   BlocksWrapperProps={{
     *     ...builderContext.BlocksWrapperProps,
     *     'data-test-id': 'my-test-id'
     *   }}
     * />
     * ```
     */
    BlocksWrapperProps: any;
    children?: any;
    classNameProp?: string;
};
export default class BlocksWrapper {
    private vcRef;
    blocks: BlocksWrapperProps["blocks"];
    classNameProp: BlocksWrapperProps["classNameProp"];
    path: BlocksWrapperProps["path"];
    parent: BlocksWrapperProps["parent"];
    styleProp: BlocksWrapperProps["styleProp"];
    BlocksWrapperProps: BlocksWrapperProps["BlocksWrapperProps"];
    BlocksWrapper: BlocksWrapperProps["BlocksWrapper"];
    blocksWrapperRef: ElementRef;
    blockswrapperTemplateRef: TemplateRef<any>;
    myContent?: any[][];
    shouldUpdate: boolean;
    get className(): string;
    get dataPath(): string;
    onClick(): void;
    onMouseEnter(): void;
    mergedInputs_2eim3t: any;
    constructor(vcRef: ViewContainerRef);
    ngAfterContentInit(): void;
    ngAfterContentChecked(): void;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<BlocksWrapper, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<BlocksWrapper, "blocks-wrapper", never, { "blocks": { "alias": "blocks"; "required": false; }; "classNameProp": { "alias": "classNameProp"; "required": false; }; "path": { "alias": "path"; "required": false; }; "parent": { "alias": "parent"; "required": false; }; "styleProp": { "alias": "styleProp"; "required": false; }; "BlocksWrapperProps": { "alias": "BlocksWrapperProps"; "required": false; }; "BlocksWrapper": { "alias": "BlocksWrapper"; "required": false; }; }, {}, never, ["*"], true, never>;
}
