import { WlBufferResource } from 'westfield-runtime-server'; import BufferImplementation from '../BufferImplementation'; import Surface from '../Surface'; import BufferStream from './BufferStream'; import { DecodedFrame } from './DecodedFrame'; /** * * A buffer provides the content for a wl_surface. Buffers are * created through factory interfaces such as gr_drm, gr_shm or * similar. It has a width and a height and can be attached to a * gr_surface, but the mechanism by which a client provides and * updates the contents is defined by the buffer factory interface. */ export default class StreamingBuffer implements BufferImplementation> { readonly resource: WlBufferResource; readonly bufferStream: BufferStream; released: boolean; private decodedFrame?; private constructor(); static create(wlBufferResource: WlBufferResource): StreamingBuffer; destroy(resource: WlBufferResource): void; getContents(surface: Surface, commitSerial: number): Promise; release(): void; }