1
0
Fork 0
tsgames/src/types.d.ts

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;
}