73 lines
1.6 KiB
TypeScript
73 lines
1.6 KiB
TypeScript
type Point = [number, number];
|
|
type Rect = [number, number, number, number];
|
|
|
|
type RunGame = () => Promise<void>;
|
|
|
|
declare namespace WebAssembly {
|
|
type tc = 'i32' | 'i64' | 'f32' | 'f64';
|
|
export class Function {
|
|
constructor(args: { parameters: tc[], results: tc[] }, func: Function);
|
|
}
|
|
}
|
|
|
|
declare module '*.module.css' {
|
|
const classes: { [key: string]: string };
|
|
export default classes;
|
|
}
|
|
declare module "*.png" {
|
|
const image: HTMLImageElement;
|
|
export default image;
|
|
}
|
|
declare module "*.jpg" {
|
|
const image: HTMLImageElement;
|
|
export default image;
|
|
}
|
|
declare module "*.jpeg" {
|
|
const image: HTMLImageElement;
|
|
export default image;
|
|
}
|
|
declare module "*.wav" {
|
|
const audio: HTMLAudioElement;
|
|
export default audio;
|
|
}
|
|
declare module "*.mp3" {
|
|
const audio: HTMLAudioElement;
|
|
export default audio;
|
|
}
|
|
declare module "*.ogg" {
|
|
const audio: HTMLAudioElement;
|
|
export default audio;
|
|
}
|
|
declare module "*.wasm" {
|
|
const instance: {
|
|
memory: WebAssembly.Memory;
|
|
data: DataView;
|
|
|
|
[x: string]: (...args: any) => any;
|
|
};
|
|
export default instance;
|
|
}
|
|
declare module "*.c" {
|
|
const instance: {
|
|
memory: WebAssembly.Memory;
|
|
table: WebAssembly.Table;
|
|
data: DataView;
|
|
|
|
[x: string]: (...args: any) => any;
|
|
};
|
|
export default instance;
|
|
}
|
|
declare module "*.cpp" {
|
|
const instance: {
|
|
memory: WebAssembly.Memory;
|
|
table: WebAssembly.Table;
|
|
data: DataView;
|
|
|
|
[x: string]: (...args: any) => any;
|
|
};
|
|
export default instance;
|
|
}
|
|
declare module "*.glsl" {
|
|
const content: string;
|
|
export default content;
|
|
} |