UNPKG

@shockpkg/dir-projector

Version:

Package for creating Shockwave Director projectors

85 lines (84 loc) 2.16 kB
import { IFilePatch, ProjectorOtto } from '../otto.ts'; /** * ProjectorOttoWindows object. */ export declare class ProjectorOttoWindows extends ProjectorOtto { /** * Icon file. */ iconFile: string | null; /** * Icon data. */ iconData: Readonly<Uint8Array> | (() => Readonly<Uint8Array>) | (() => Promise<Readonly<Uint8Array>>) | null; /** * Version strings. */ versionStrings: Readonly<{ [key: string]: string; }> | null; /** * Patch the Shockave 3D Xtra to have a larger buffer to avoid a crash. * The buffer for resolving InstalledDisplayDrivers to a path is small. * Changes to the values stored in InstalledDisplayDrivers cause issues. * The value is now supposed to hold full paths on modern Windows. * In particular, Nvidia drivers which do this need this patch. */ patch3dDisplayDriversSize: boolean; /** * ProjectorOttoWindows constructor. * * @param path Output path. */ constructor(path: string); /** * @inheritdoc */ get extension(): string; /** * @inheritdoc */ get configNewline(): string; /** * @inheritdoc */ get lingoNewline(): string; /** * @inheritdoc */ get splashImageExtension(): string; /** * Get the SKL name. * * @returns File name. */ get sklName(): string; /** * Get icon data if any specified, from data or file. * * @returns Icon data or null. */ getIconData(): Promise<Readonly<Uint8Array> | null>; /** * @inheritdoc */ protected _writeSkeleton(skeleton: string): Promise<void>; /** * Get patches to apply. * * @returns Patches list. */ protected _getPatches(): Promise<IFilePatch[]>; /** * Get patch for main file resources. * * @returns Patch spec. */ protected _getPatchResources(): Promise<IFilePatch | null>; /** * Get patch for Shockwave 3D InstalledDisplayDrivers size. * * @returns Patch spec. */ protected _getPatch3dDisplayDriversSize(): IFilePatch | null; }