На этой страницеAPI SDK 1.0.0
Справочник API
Сигнатуры методов, типы значений и связь с нативными возможностями.
API SDK 1.0.0
Объект api передаётся в activate. Все нативные операции асинхронны и возвращают Promise. Ниже — карта основных семейств.
Типы для редактора
Полное описание: скачать index.d.ts. Оно входит в архив SDK в папке types.
interface Plugin {
activate(api: API): void | Promise<unknown>;
deactivate?(): void | Promise<unknown>;
}
Методы
| Семейство | Основные методы |
|---|---|
commands |
register(descriptor, handler?) |
messages |
beforeSend, read, send, edit, delete |
composer |
getActiveDraft, replaceSelection |
selection |
get |
settings |
get, set |
storage |
get, set, remove, keys |
events |
on |
ui |
toast, callback, render, dispose |
assets |
image |
network |
request |
environment |
get |
capabilities |
list, has |
theme |
get, contribute, clear |
files |
pick, read |
translation |
request |
chats, peers |
metadata, read |
navigation |
open |
notifications |
local |
transforms |
register |
actions.messages |
prepare, sendInteractive, compose |
Проверка доступности
const capabilities = await api.capabilities.list();
const canReadTheme = await api.capabilities.has("theme.read");
has принимает имя capability, например theme.read. list возвращает объект с именами нативных методов, например theme.get. Результат — подсказка о хосте. Сам вызов всё равно проверяет текущие разрешения, scope, экран и поколение runtime. Метод может отказать после успешной проверки доступности, если контекст успел измениться.
Значения и ошибки
Обычные данные — JSON: строки, конечные числа, boolean, null, массивы и объекты. Не передавайте функции в нативные параметры; для UI используются зарегистрированные callback ID.
Ошибка нативной операции содержит code. Пользовательская отмена обычно обрабатывается без отдельного сообщения, а отсутствие функции — через запасной сценарий.
try {
await api.navigation.open({ screen: "plugins" });
} catch (error) {
if (error.code === "cancelled") return;
throw error;
}
Точные возможности каждой операции приведены в разрешениях, ограничения среды — в runtime.