TypeScript examples(Ver2.14対応版)
Index

TypeScriptを使う場合の例です。
TypeScriptを推奨するものではありません。
バージョンによって異なる可能性があります。

●tsconfig.jsonの例

{
  "compilerOptions": {
    "lib": ["esnext"]  // DOM型定義を除外
  }
}

●hmfilerclassic.d.tsの例

declare function createObject(str: string): any;
declare function echo(str: string): void;
declare function message(str: string, num?: number): void;
declare function question(str: string): number;
declare function input(str1: string, str2: string): string;
declare function prompt(str1: string, str2: string): string;
declare function beep(): void;
declare function endMacro(): void;
declare function command(str: string): void;
declare function contextMenu(str1: string, str2?: string): void;
declare function backgroundContextMenu(str1: string): void;
declare function sendTo(str: string, num?: number, num2?: number): void;
declare function selectAll(): void;
declare function cut(): void;
declare function copy(): void;
declare function paste(): void;
declare function pasteLink(): void;
declare function rename(strBase: string, strExt?: string): void;
declare function renameReplace(strSearch: string, strReplace: string, numOption?: number): void;
declare function open(str: string, num1?: number, num2?: number, num3?: number): void;
declare function refresh(num?: number): void;
declare function getClipboard(): string;
declare function setClipboard(str: string): void;
declare function getDirectory(): string;
declare function setDirectory(str: string): void;
declare function addBookmark(str1: string, str2: string, str3?: string, num1?: number): void;
declare function getFocusTarget(): number;
declare function getKeyState(num1: number, num2: number): number;
declare function expandFolder(str1: string, num1?: number, num2?: number): void;
declare function sleep(num: number): void;
declare function getWildcard(): string;
declare function getClipboardFiles(): string;
declare function isClipboardFormatAvailable(value: string | number): number;
declare function menu(...values: string[]): number;
declare function menuArray(array: any, num?: number): number;
declare function getSpaceSelectMode(): number;
declare function setSpaceSelectMode(num: number): void;
declare function getArg(num: number): string;
declare function findWindow(strClass: string, strTitle: string, numOption?: number): void;
declare function findWindowEx(numHwndParent: number, numHwndChildAfter: number, strClass: string, strTitle: string): void;
declare function getWindow(numHwnd: number, num: number): number;
declare function isWindowVisible(numHwnd: number): void;
declare function isWindow(numHwnd: number): void;
declare function getWindowText(numHwnd: number): string;
declare function getCurrentWindowHandle(): number;
declare function getStaticVariable(strName: string, numOption: number): string;
declare function setStaticVariable(strName: string, strData: string, numOption: number): void;
declare function setAttentionBar(str: string): void;
declare function browseFile(str1: string, str2?: string): void;
declare function loadTextFile(strFile: string): string;
declare function loadDll(str: string): DllFuncManager;
declare function getView(): number;
declare function setView(num: number): void;
declare function sort(v: number | string, num2?: number): void;
declare function getItemCount(): number;
declare function getSelectedCount(): number;
declare function getNextItem(num1: number, num2: number): number;
declare function getItemState(num: number): number;
declare function getItemText(num1: number, num2?: number): string;
declare function getItemPath(num: number): string;
declare function isFolder(num: number): number;
declare function getColumnCount(): number;
declare function getColumnText(num: number): string;
declare function selectItem(v: number | string, num2?: number): void;
declare function customFileList(strFileName: string): void;
declare function getThumbnailSize(numType: number): number;
declare function setThumbnailSize(numSize: number, numType: number): void;
declare function getTabBarCount(): number;
declare function getTabCount(num?: number): number;
declare function getTabState(num1: number, num2: number): number | string;
declare function getCurrentTab(num?: number): number;
declare function getTabName(num1: number, num2?: number): string;
declare function setTabName(str: string, num1?: number): void;
declare function setActiveTab(num: number): void;
declare function closeTab(num: number): number;
declare function closeOtherTab(): void;
declare readonly const version: number;
declare readonly const busy: number;
declare readonly const fullName: string;
declare readonly const scriptFullName: string;
declare readonly const argCount: number;
declare readonly const tickCount: number;
declare readonly const platform: number;
declare readonly const config: Config;
interface Config {
  hiddenVisible: number;
  checkBox: number;
  trackSelect: number;
  splitMode: number;
  mixSort: number;
  alwaysFolderUpper: number;
  standardButtonsBar: number;
  addressBar: number;
  linkBar: number;
  toolItemBar: number;
  filterBar: number;
  driveBar: number;
  statusBar: number;
  thumbnailSize: number;
  folderTreeDragDisabled: number;
  folderTreeDropDisabled: number;
  folderTreeAutoVScroll: number;
  fileListDragDisabled: number;
  fileListDropDisabled: number;
  previewPane: number;
}
declare readonly const configSystem: ConfigSystem;
interface ConfigSystem {
  systemVisible: number;
  extVisible: number;
}
interface DllFuncManager {
  loadDllFile: string;
  dllFuncExist(p1:string):number;
  setDllDetachFunc(p1:string):number;
  dllFunc: DllFuncManager;
  dllFuncStr: DllFuncManager;
  dllFuncW: DllFuncManager;
  dllFuncStrW: DllFuncManager;
  [key: string]: any;
}