phaser3-rex-plugins
Version:
84 lines (77 loc) • 2 kB
TypeScript
export default DataManager;
declare namespace DataManager {
/**
* Configuration options for creating a local-storage DataManager.
*/
interface IConfig {
/**
* Storage namespace name.
*/
name?: string,
/**
* Load data on initialization.
*/
load?: boolean,
/**
* Default key-value data.
*/
default?: { [key: string]: any },
/**
* Reset stored data before loading.
*/
reset?: boolean
}
}
/**
* DataManager with local-storage persistence support.
*/
declare class DataManager extends Phaser.Data.DataManager {
/**
* Create a DataManager with config only.
*
* @param config - Configuration options.
*/
constructor(
config?: DataManager.IConfig
);
/**
* Create a DataManager with parent and config.
*
* @param parent - Parent object.
* @param config - Configuration options.
*/
constructor(
parent?: object,
config?: DataManager.IConfig
);
/**
* Create a DataManager with parent, event emitter, and config.
*
* @param parent - Parent object.
* @param eventEmitter - Event emitter instance.
* @param config - Configuration options.
*/
constructor(
parent?: object,
eventEmitter?: Phaser.Events.EventEmitter,
config?: DataManager.IConfig
);
/**
* Load persisted data.
*
* @param defaultValue - Default key-value data.
* @param reset - Reset stored data before load.
* @returns This DataManager instance.
*/
load(
defaultValue?: { [key: string]: any },
reset?: boolean
): this;
/**
* Get default value by key.
*
* @param key - Data key.
* @returns The default value.
*/
getDefaultValue(key: string): any;
}