pxt-core
Version:
Microsoft MakeCode provides Blocks / JavaScript / Python tools and editors
36 lines (35 loc) • 2.28 kB
TypeScript
import * as Blockly from "blockly";
export declare function promptTranslateBlock(blockId: string, blockTranslationIds: string[]): void;
export declare function setPromptTranslateBlock(impl: (blockId: string, blockTranslationIds: string[]) => void): void;
export declare function extensionBlocklyPatch(pkgTargetVersion: string, el: Element): void;
export declare function setExtensionBlocklyPatch(impl: (pkgTargetVersion: string, el: Element) => void): void;
export declare function openHelpUrl(url: string): void;
export declare function setOpenHelpUrl(impl: (url: string) => void): void;
export declare function onWorkspaceContextMenu(workspace: Blockly.WorkspaceSvg, options: Blockly.ContextMenuRegistry.ContextMenuOption[]): void;
export declare function setOnWorkspaceContextMenu(impl: (workspace: Blockly.WorkspaceSvg, options: Blockly.ContextMenuRegistry.ContextMenuOption[]) => void): void;
export interface PromptOptions {
placeholder: string;
buttons?: PromptButton[];
}
interface PromptButton {
label?: string;
title?: string;
icon?: string;
className?: string;
onclick?: () => (Promise<void> | void);
}
export declare function setPrompt(impl: (message: string, defaultValue: string, callback: (value: string) => void, options?: PromptOptions) => void, setBlocklyAlso?: boolean): void;
export declare function prompt(message: string, defaultValue: string, callback: (value: string) => void, options?: PromptOptions): void;
export declare function setOpenWorkspaceSearch(impl: () => void): void;
export declare function openWorkspaceSearch(): void;
declare type ShortcutHandler = (workspace: Blockly.Workspace, e: Event, shortcut: Blockly.ShortcutRegistry.KeyboardShortcut, scope: Blockly.ContextMenuRegistry.Scope) => boolean;
declare type PreconditionFn = (scope: Blockly.ContextMenuRegistry.Scope) => "enabled" | "disabled" | "hidden";
export declare function setCopyPaste(copy: ShortcutHandler, cut: ShortcutHandler, paste: ShortcutHandler, copyPrecondition: PreconditionFn, pastePrecondition: PreconditionFn): void;
export declare function getCopyPasteHandlers(): {
copy: ShortcutHandler;
cut: ShortcutHandler;
paste: ShortcutHandler;
copyPrecondition: PreconditionFn;
pastePrecondition: PreconditionFn;
};
export {};