/* * Copyright (c) 2023, Kenneth Myhra * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include namespace Web::Streams { // https://streams.spec.whatwg.org/#dictdef-transformer struct Transformer { // https://streams.spec.whatwg.org/#dom-transformer-start GC::Root start; // https://streams.spec.whatwg.org/#dom-transformer-transform GC::Root transform; // https://streams.spec.whatwg.org/#dom-transformer-flush GC::Root flush; // https://streams.spec.whatwg.org/#dom-transformer-cancel GC::Root cancel; // https://streams.spec.whatwg.org/#dom-transformer-readabletype Optional readable_type; // https://streams.spec.whatwg.org/#dom-transformer-writabletype Optional writable_type; static JS::ThrowCompletionOr from_value(JS::VM&, JS::Value); }; }