export type IndexMark = number; /** * Encode a V-Table for a semi-parsed STEP serialized object, by encoding the byte * positions of all the fields. */ export default class StepVtableBuilder { private buffer_; private bufferMark_; private indexMark_; /** * Get the buffer associated with this V-Table * * @return {Uint32Array} The buffer associated with this v-table builder that contains the * addresses. */ get buffer(): Uint32Array; /** * Construct this with an initial buffer allocation. * * @param startingBufferSize The initial size of the buffer to allocate, in 32 bit intervals. */ constructor(startingBufferSize?: number); /** * Clear this out, note that anything using the table should also be invalidated. * * @param dropBuffer Should we also drop the buffer to allow it to be garbage collected, * or should we drop it and allow the memory to be reclaimed. */ clear(dropBuffer?: boolean): void; /** * Push an address to the back of this current entry. * * @param address The address to put back. */ push(address: number): void; /** * Complete a row of vtable entries in the buffer, returning the index mark of the vtable run + * the number of entries. * * @param endCursor * @return {[IndexMark, number, number]} The index mark (i.e. location in the buffer this run * exists), * the number of entries, and the last cursor position. */ complete(endCursor: number): [IndexMark, number, number]; } //# sourceMappingURL=step_vtable_builder.d.ts.map