UNPKG

@obsidize/tar-browserify

Version:

Browser-based tar utility for packing and unpacking tar files (stream-capable)

74 lines (73 loc) 3.07 kB
import { TarSerializable } from '../../common/tar-utility'; import { UstarHeaderLike } from './ustar-header-like'; import { UstarHeaderLinkIndicatorType } from './ustar-header-link-indicator-type'; /** * Facade over a backing Uint8Array buffer to consume/edit header data * at a specific location in the buffer. * * Does not perform any mutations or reads on creation, and * lazy loads/sets data via getters and setters. */ export declare class UstarHeader implements UstarHeaderLike, TarSerializable { private readonly mValueMap; constructor(attributes?: Partial<UstarHeaderLike>); static isUstarHeader(value: any): boolean; /** * @returns A new `UstarHeader` instance based on the given attributes (if they are a POJO). * Note that if the given value is already a UstarHeader instance, this will return it as-is. */ static fromAttributes(attributes: Partial<UstarHeaderLike>): UstarHeader; /** * Short-hand for constructing a new `UstarHeader` and immediately calling `toUint8Array()` on it */ static serializeAttributes(attributes: Partial<UstarHeaderLike>): Uint8Array; /** * Parses out a UstarHeader instance from the given input buffer, at the given offset. * The given offset must be a multiple of SECTOR_SIZE. * * If the sector at the given offset is not marked with a ustar indicator, * this will return null. */ static deserialize(input: Uint8Array, offset?: number): UstarHeader | null; static defaultValues(): UstarHeaderLike; get fileName(): string; set fileName(value: string); get fileMode(): number; set fileMode(value: number); get ownerUserId(): number; set ownerUserId(value: number); get groupUserId(): number; set groupUserId(value: number); get fileSize(): number; set fileSize(value: number); get lastModified(): number; set lastModified(value: number); get headerChecksum(): number; set headerChecksum(value: number); get linkedFileName(): string; set linkedFileName(value: string); get typeFlag(): UstarHeaderLinkIndicatorType; set typeFlag(value: UstarHeaderLinkIndicatorType); get ustarIndicator(): string; get ustarVersion(): string; set ustarVersion(value: string); get ownerUserName(): string; set ownerUserName(value: string); get ownerGroupName(): string; set ownerGroupName(value: string); get deviceMajorNumber(): string; set deviceMajorNumber(value: string); get deviceMinorNumber(): string; set deviceMinorNumber(value: string); get fileNamePrefix(): string; set fileNamePrefix(value: string); get isPaxHeader(): boolean; get isGlobalPaxHeader(): boolean; get isLocalPaxHeader(): boolean; get isFileHeader(): boolean; get isDirectoryHeader(): boolean; update(attributes: Partial<UstarHeaderLike>): this; toAttributes(): UstarHeaderLike; toUint8Array(): Uint8Array; toJSON(): Record<string, unknown>; }