public override async ValueTask WritePreambleAsync()
        {
            var templateContext = new LayoutTemplateContext(Context, _themeName, _messageCount);
            var templateBundle  = await TemplateBundle.ResolveAsync();

            await _writer.WriteLineAsync(
                await templateBundle.PreambleTemplate.RenderAsync(templateContext)
                );
        }
        public override async ValueTask WritePostambleAsync()
        {
            // Flush current message group
            if (_messageGroupBuffer.Any())
            {
                await WriteMessageGroupAsync(MessageGroup.Join(_messageGroupBuffer));
            }

            var templateContext = new LayoutTemplateContext(Context, _themeName, _messageCount);
            var templateBundle  = await TemplateBundle.ResolveAsync();

            await _writer.WriteLineAsync(
                await templateBundle.PostambleTemplate.RenderAsync(templateContext)
                );
        }