Structuring JSON object for looped component with Handlebars (HTML)

I’ve recently started using Handlebars and have the following HTML template:

    {{#each this.level3}}
    <div class="expanded-view" data-cmp-src="{{data-cmp-src}}">
      <div class="d-flex justify-content-between heading">
        <h4>Heading that should be the same for all children</h4>
        <button>Likewise for button text</button>
      </div>
      <div class="d-flex flex-wrap content-panel">
        <figure class="l3-item">
          <a href="#"
            ><img class="content-square" src="{{imgSrc}}" alt="{{altText}}"
          /></a>
          <figcaption>{{caption}}</figcaption>
        </figure>
      </div>
    </div>
    {{/each}}

It’s a basic component that displays a heading, button and then an image with a caption.

I’m using a JSON object to iterate through my items but am struggling to get the correct format.

The use of data-bs-target and data-cmp-src ensure the correct options are shown when they’re associated element is selected (logic handled out of snippet).

What I’d like to do however is structure my JSON in the correct way so that multiple images/captions can be returned when the data-cmp-src is matched, which also means they can share the same title and button text. I know the JSON object formatting isn’t correct but any tips would be appreciated.

Summary: I want child objects to share the same heading, btnText, data-properties. (Currently I can only show one image/caption).

    "level3": [{
    {
      "heading": "Option 1 View heading",
      "btnText": "Option 1 View btn text",
      "data-bs-target": "#historyCollapseOneChild",
      "data-cmp-src": "historyL3Child",
      {
        "imgSrc": "../../assets/images/mega-menu/hegra.png",
        "caption": "the first image in view 1"
      },
      {
        "imgSrc": "../../assets/images/mega-menu/hegra.png",
        "caption": "the second image in view 2"
      },
        },
    {
      "heading": "Option 2 View heading",
      "btnText": "Option 2 View btn text",
      "data-bs-target": "#historyCollapseOneChild",
      "data-cmp-src": "historyL3Child",
      {
        "imgSrc": "../../assets/images/mega-menu/hegra.png",
        "caption": "the first image in view 2"
      },
      {
        "imgSrc": "../../assets/images/mega-menu/hegra.png",
        "caption": "the second image in view 2"
      },
        }
    ]