+
+ @for (int i = 0; i < Model.Images.Count; i++)
+ {
+ var image = Model.Images[i];
+
+ }
+
+
+ @if (Model.Images.Count > 1)
+ {
+
+
+ }
+
+ @if (Model.Images.Count > 1)
+ {
+
+ @for (int i = 0; i < Model.Images.Count; i++)
+ {
+
+ }
+
+ }
+
diff --git a/src/Elastic.Markdown/Myst/Directives/Image/ImageCarouselViewModel.cs b/src/Elastic.Markdown/Myst/Directives/Image/ImageCarouselViewModel.cs
new file mode 100644
index 000000000..d241aa472
--- /dev/null
+++ b/src/Elastic.Markdown/Myst/Directives/Image/ImageCarouselViewModel.cs
@@ -0,0 +1,15 @@
+// Licensed to Elasticsearch B.V under one or more agreements.
+// Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
+// See the LICENSE file in the project root for more information
+
+using System.Text;
+using Elastic.Documentation.Extensions;
+using Elastic.Markdown.Myst.Directives.Image;
+
+namespace Elastic.Markdown.Myst.Directives.Image;
+
+public class ImageCarouselViewModel : DirectiveViewModel
+{
+ public required List