diff --git a/Userland/Libraries/LibWeb/Forward.h b/Userland/Libraries/LibWeb/Forward.h index b9cc798a78..b473d18936 100644 --- a/Userland/Libraries/LibWeb/Forward.h +++ b/Userland/Libraries/LibWeb/Forward.h @@ -550,6 +550,7 @@ class WritableStreamDefaultController; class WritableStreamDefaultWriter; struct PullIntoDescriptor; +struct QueuingStrategy; struct QueuingStrategyInit; struct UnderlyingSink; struct UnderlyingSource; diff --git a/Userland/Libraries/LibWeb/Streams/QueuingStrategy.h b/Userland/Libraries/LibWeb/Streams/QueuingStrategy.h new file mode 100644 index 0000000000..d49e3fe27f --- /dev/null +++ b/Userland/Libraries/LibWeb/Streams/QueuingStrategy.h @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2023, Shannon Booth + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +#include +#include +#include + +namespace Web::Streams { + +// https://streams.spec.whatwg.org/#dictdef-queuingstrategy +struct QueuingStrategy { + Optional high_water_mark; + JS::GCPtr size; +}; + +} diff --git a/Userland/Libraries/LibWeb/Streams/QueuingStrategy.idl b/Userland/Libraries/LibWeb/Streams/QueuingStrategy.idl new file mode 100644 index 0000000000..09c7ef1a00 --- /dev/null +++ b/Userland/Libraries/LibWeb/Streams/QueuingStrategy.idl @@ -0,0 +1,7 @@ +callback QueuingStrategySize = unrestricted double (any chunk); + +// https://streams.spec.whatwg.org/#dictdef-queuingstrategy +dictionary QueuingStrategy { + unrestricted double highWaterMark; + QueuingStrategySize size; +};