| // Copyright 2015 The Chromium Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| export interface OutputStream { | |
| write(data: string, endOfFile?: boolean): Promise<void>; | |
| close(): Promise<void>; | |
| } | |
| export class StringOutputStream implements OutputStream { | |
| #data = ''; | |
| async write(chunk: string): Promise<void> { | |
| this.#data += chunk; | |
| } | |
| async close(): Promise<void> { | |
| } | |
| data(): string { | |
| return this.#data; | |
| } | |
| } |