UNPKG

@bscotch/stitch

Version:

Stitch: The GameMaker Studio 2 Asset Pipeline Development Kit.

41 lines 2.08 kB
import { Pathy } from '@bscotch/pathy'; import { type AudioSourceConfig, type SourceConfig, type ConfigFile, GroupedSourceConfig } from './assetSource.types.js'; export declare class AssetSourceConfig<T extends SourceConfig = SourceConfig> { readonly dir: Pathy; protected config: T; constructor(dir: Pathy, config: T); get id(): string; get type(): T['type']; get files(): T['files']; set files(files: T['files']); absoluteFilePath(file: T['files'][number]): Pathy; grouped(): GroupedSourceConfig<T>; toJSON(): T; compareFiles(a: T['files'][number], b: T['files'][number]): number; } export declare class AssetSourcesConfig { readonly path: Pathy<ConfigFile>; constructor(path: string | Pathy<any>); get dir(): Pathy<unknown>; listAudioSources(): Promise<AssetSourceConfig<AudioSourceConfig>[]>; listSources(options?: { filter: (sources: AssetSourceConfig) => any; }): Promise<AssetSourceConfig[]>; findAudioSource(id: string, config?: ConfigFile): Promise<[AssetSourceConfig<AudioSourceConfig>, number]>; findSource(id: string, config?: ConfigFile): Promise<[source: AssetSourceConfig, idx: number]>; addAudioSource(info?: Partial<AudioSourceConfig>): Promise<AssetSourceConfig<AudioSourceConfig>>; removeSource(id: string): Promise<void>; updateAudioSource(id: string, info: Partial<Omit<AudioSourceConfig, 'id' | 'files'>>): Promise<AudioSourceConfig>; /** * Update the config file to reflect the current state * of all described files. */ refreshAudioSource(id: string): Promise<AssetSourceConfig<AudioSourceConfig>>; toggleImportables(sourceId: string, fileIds: string[], importable: boolean): Promise<void>; toggleImportable(sourceId: string, fileId: string, importable: boolean): Promise<void>; load(): Promise<ConfigFile>; protected write(config: ConfigFile): Promise<void>; static readonly basename = "stitch.src.json"; static from(path: string | Pathy): AssetSourcesConfig; } //# sourceMappingURL=AssetSourcesConfig.d.ts.map