@runejs/filestore
Version:
Tools for managing the RuneJS filestore.
37 lines (36 loc) • 1.09 kB
TypeScript
import { type Filestore } from '../filestore';
import type { FileData } from '../file-data';
/**
* A single MIDI file object.
*/
export declare class MidiFile {
readonly fileData: FileData;
constructor(fileData: FileData);
/**
* Writes this unpacked MIDI file to the disk under `./unpacked/midi/{midiFileName}.mid`
*/
writeToDisk(): Promise<void>;
get fileId(): number;
}
/**
* Controls MIDI file storage.
*/
export declare class MusicStore {
private fileStore;
constructor(fileStore: Filestore);
/**
* Writes all unpacked MIDI files to the disk under `./unpacked/midi/`
*/
writeToDisk(): Promise<void>;
/**
* Decodes the specified midi file.
* @param nameOrId The name or ID of the midi file.
* @returns The decoded MidiFile object, or null if the file is not found.
*/
getMidi(nameOrId: string | number): MidiFile | null;
/**
* Decodes all midi files within the filestore.
* @returns The list of decoded MidiFile objects from the midi store.
*/
decodeMusicStore(): MidiFile[];
}