MIRROR: javascript for 馃悳's, a tiny runtime with big ambitions
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at type-hints-typescript 176 lines 3.4 kB view raw
1type AntType = 2 | 'undefined' 3 | 'null' 4 | 'boolean' 5 | 'number' 6 | 'bigint' 7 | 'string' 8 | 'symbol' 9 | 'object' 10 | 'array' 11 | 'function' 12 | 'cfunc' 13 | 'closure' 14 | 'promise' 15 | 'generator' 16 | 'err' 17 | 'typedarray' 18 | 'ffi' 19 | 'ntarg'; 20 21type AntHost = 22 | 'cygwin' 23 | 'darwin' 24 | 'dragonfly' 25 | 'emscripten' 26 | 'freebsd' 27 | 'gnu' 28 | 'haiku' 29 | 'linux' 30 | 'netbsd' 31 | 'openbsd' 32 | 'windows' 33 | 'sunos' 34 | 'os/2'; 35 36interface SymbolConstructor { 37 readonly inspect: symbol; 38} 39 40interface AntPoolInfo { 41 used: number; 42 capacity: number; 43 blocks: number; 44} 45 46interface AntStringPoolInfo extends AntPoolInfo { 47 pooled: AntPoolInfo; 48 largeLive: AntPoolInfo; 49 largeReusable: AntPoolInfo; 50 largeQuarantine: AntPoolInfo; 51} 52 53interface AntPoolStats { 54 rope: AntPoolInfo; 55 symbol: AntPoolInfo; 56 bigint: AntPoolInfo; 57 string: AntStringPoolInfo; 58 totalUsed: number; 59 totalCapacity: number; 60} 61 62interface AntExternalMemory { 63 buffers: number; 64 code: number; 65 total: number; 66} 67 68interface AntAllocStats { 69 objectCount: number; 70 objects: number; 71 overflow: number; 72 extraSlots: number; 73 promises: number; 74 proxies: number; 75 exotic: number; 76 arrays: number; 77 shapes: number; 78 closures: number; 79 upvalues: number; 80 propRefs: number; 81 total: number; 82} 83 84interface AntStatsResult { 85 pools: AntPoolStats; 86 alloc: AntAllocStats; 87 external: AntExternalMemory; 88 intern: { 89 count: number; 90 bytes: number; 91 }; 92 vm?: { 93 stackSize: number; 94 stackUsed: number; 95 maxFrames: number; 96 framesUsed: number; 97 }; 98 cstack: number; 99 rss?: number; 100 virtualSize?: number; 101} 102 103interface AntRaw { 104 readonly stack: string; 105 typeof(t: unknown): number; 106 ctorPropFeedback(fn: Function): AntCtorPropFeedback; 107 gcMarkProfile(): AntGcMarkProfile; 108 gcMarkProfileEnable(enabled?: boolean): boolean; 109 gcMarkProfileReset(): void; 110} 111 112interface AntCtorPropFeedback { 113 samples: number; 114 overflowFrom: number; 115 inobjLimit: number; 116 inobjLimitFrozen: boolean; 117 slackRemaining: number; 118 bins: number[]; 119 name?: string; 120 filename?: string; 121} 122 123interface AntGcMarkProfile { 124 enabled: boolean; 125 collections: number; 126 funcVisits: number; 127 childEdges: number; 128 constSlots: number; 129 timeNs: number; 130 timeMs: number; 131} 132 133interface HttpContext { 134 req: { 135 method: string; 136 uri: string; 137 query: string; 138 body: string; 139 header(name: string): string | undefined; 140 }; 141 res: { 142 header(name: string, value: string): void; 143 status(code: number): void; 144 body(body: string, status?: number, contentType?: string): void; 145 html(body: string, status?: number): void; 146 json(data: unknown, status?: number): void; 147 notFound(): void; 148 redirect(url: string, status?: number): void; 149 }; 150 set(key: string, value: unknown): void; 151 get(key: string): unknown; 152} 153 154interface AntStatic { 155 version: string; 156 target: string; 157 revision: string; 158 buildDate: string; 159 host: AntHost; 160 161 inspect(...args: unknown[]): void; 162 typeof(t: unknown): AntType | '??'; 163 164 raw: AntRaw; 165 stats(): AntStatsResult; 166 suppressReporting(): void; 167 168 sleep(seconds: number): void; 169 msleep(milliseconds: number): void; 170 usleep(microseconds: number): void; 171 172 signal(signum: number, handler: (signum: number) => void): void; 173 serve<T extends HttpContext = HttpContext>(port: number, handler?: (ctx: T) => void | Promise<void>): number; 174} 175 176declare const Ant: AntStatic;