#nullable enable using System.Collections.Concurrent; namespace Terminal.Gui.Drivers; /// /// Abstract base class implementation of that provides a default implementation of . /// The platform specific keyboard input type (e.g. or public abstract class ComponentFactoryImpl : IComponentFactory where TInputRecord : struct { /// public abstract IInput CreateInput (); /// public abstract IInputProcessor CreateInputProcessor (ConcurrentQueue inputBuffer); /// public virtual ISizeMonitor CreateSizeMonitor (IOutput consoleOutput, IOutputBuffer outputBuffer) { return new SizeMonitorImpl (consoleOutput); } /// public abstract IOutput CreateOutput (); }