coffee-ahk
Version:
coffeescript -> ahk
189 lines (188 loc) • 6.04 kB
TypeScript
import cs from "coffeescript";
import { OptionPartial } from "./index.js";
type KeyScope = (typeof listRule)[number];
declare const listRule: readonly [
"",
"array",
"call",
"case",
"catch",
"class",
"else",
"finally",
"for",
"function",
"if",
"object",
"parameter",
"switch",
"try",
"while"
];
declare class Scope {
#private;
next: KeyScope;
constructor(...args: Parameters<Scope["reload"]>);
get last(): "" | "object" | "function" | "array" | "call" | "case" | "catch" | "class" | "else" | "finally" | "for" | "if" | "parameter" | "switch" | "try" | "while";
get length(): number;
get list(): ("" | "object" | "function" | "array" | "call" | "case" | "catch" | "class" | "else" | "finally" | "for" | "if" | "parameter" | "switch" | "try" | "while")[];
at(n: number): KeyScope | undefined;
isEquals(target: Scope | KeyScope[] | string[]): boolean;
pop(): KeyScope;
push(...args: KeyScope[]): number;
reload(input?: Scope | KeyScope[]): void;
shift(): KeyScope;
slice(...args: Parameters<string[]["slice"]>): KeyScope[];
unshift(...args: KeyScope[]): number;
}
declare const listType: readonly [
"++",
"--",
".",
"await",
"boolean",
"bracket",
"class",
"compare",
"edge",
"error",
"for",
"for-in",
"function",
"identifier",
"if",
"logical-operator",
"math",
"native",
"negative",
"new-line",
"number",
"property",
"prototype",
"sign",
"statement",
"string",
"super",
"this",
"try",
"void",
"while"
];
declare class Item {
comment?: string[];
scope: Scope;
type: (typeof listType)[number];
value: string;
constructor(...args: [
type?: Item["type"],
value?: Item["value"],
scope?: ConstructorParameters<typeof Scope>[0]
] | [
Item
]);
clone(): Item;
is(type: (typeof listType)[number], value?: string): boolean;
}
declare class Content {
#private;
scope: Scope;
constructor(scope: Scope);
get last(): Item;
get length(): number;
get list(): Item[];
at(n: number): Item | undefined;
pop(): Item;
push(...args: ConstructorParameters<typeof Item>): this;
reload(list?: Item[]): this;
shift(): Item;
unshift(...args: ConstructorParameters<typeof Item>): this;
}
type Cache = {
global: Set<string>;
};
type Context = {
cache: Cache;
content: Content;
flag: Flag;
indent: number;
option: OptionPartial;
scope: Scope;
token: Token & {
origin?: Token;
};
type: string;
value: string;
};
type Flag = {
isChangeIndexUsed: boolean;
isFunctionIncluded: boolean;
};
type Token = ReturnType<typeof cs.compile>["tokens"][number];
type Result = {
ast: Context["content"]["list"];
content: string;
raw: Context["token"][];
};
declare const main: (cont: string, option: Context["option"]) => Result;
type Context2 = Context;
declare const main$0: (ctx: Context2) => string;
declare const main$1: (ctx: Context) => void;
declare const main$2: (ctx: Context) => void;
declare const main$3: (ctx: Context) => void;
declare const _exports: string[];
declare const main$4: (ctx: Context) => void;
declare const main$5: (ctx: Context) => void;
declare const main$6: (ctx: Context) => void;
declare const main$7: (ctx: Context) => void;
declare const main$8: (ctx: Context) => void;
declare const main$9: (ctx: Context) => void;
declare const main$10: (ctx: Context, listFn: Set<string>) => void;
declare const main$11: (ctx: Context) => void;
declare const main$12: (ctx: Context) => void;
declare const main$13: (ctx: Context) => void;
declare const main$14: (ctx: Context) => void;
declare const main$15: (ctx: Context) => Set<string>;
declare const main$16: (ctx: Context) => void;
declare const main$17: (ctx: Context) => void;
declare const main$18: (ctx: Context) => void;
declare const main$19: (ctx: Context) => void;
declare const main$20: (ctx: Context) => void;
declare const main$21: (ctx: Context) => void;
declare const main$22: (setClass: Set<string>) => void;
declare const main$23: (ctx: Context) => Set<string>;
declare const main$24: (ctx: Context) => void;
declare const main$25: (ctx: Context) => void;
declare const main$26: (ctx: Context) => void;
declare const main$27: (ctx: Context) => void;
declare const main$28: (ctx: Context) => void;
declare const main$29: (ctx: Context) => boolean;
declare const main$30: (ctx: Context) => boolean;
declare const main$31: (ctx: Context) => boolean;
declare const main$32: (ctx: Context) => boolean;
declare const main$33: (ctx: Context) => boolean;
declare const main$34: (ctx: Context) => boolean;
declare const main$35: (ctx: Context) => boolean;
declare const main$36: (ctx: Context) => boolean;
declare const main$37: (ctx: Context) => boolean;
declare const main$38: (ctx: Context) => boolean;
declare const main$39: (ctx: Context) => boolean;
declare const main$40: (ctx: Context) => boolean;
declare const main$41: (ctx: Context) => boolean;
declare const main$42: (ctx: Context) => boolean;
declare const main$43: (ctx: Context) => boolean;
declare const main$44: (ctx: Context) => boolean;
declare const main$45: (ctx: Context) => boolean;
declare const main$46: (ctx: Context) => boolean;
declare const at: <T>(input: T[] | Record<string, T>, key: number | string) => T | undefined;
declare const main$47: (ctx: Context) => boolean;
declare const main$48: (ctx: Context) => boolean;
declare const main$49: (ctx: Context) => boolean;
declare const main$50: (ctx: Context) => boolean;
declare const main$51: (ctx: Context) => boolean;
declare const main$52: (ctx: Context) => boolean;
declare const main$53: (ctx: Context) => boolean;
declare const main$54: (ctx: Context) => boolean;
declare const main$55: (ctx: Context) => boolean;
declare const main$56: (ctx: Context) => boolean;
declare const main$57: (ast: Item[]) => void;
export { main as default };