masto
Version:
Mastodon API client for JavaScript, TypeScript, Node.js, browsers
43 lines (42 loc) • 1.63 kB
TypeScript
import { type LogType } from "../interfaces/index.js";
import { type mastodon } from "../mastodon/index.js";
import { type MastoHttpConfigProps, type WebSocketConfigProps } from "./config/index.js";
interface LogConfigProps {
/**
* Log level for the client.
*
* - `debug`: Log everything.
* - `info`: Log important information.
* - `warn`: Log warnings.
* - `error`: Log errors.
*
* Defaults to `warn`.
*/
readonly log?: LogType;
}
interface MediaConfigProps {
/**
* Timeout milliseconds for media upload processing.
*
* When uploading media via `/api/v2/media`, the library polls the server
* to wait for media processing to complete before returning. This timeout
* controls how long to wait before giving up.
*
* Defaults to 60000 (60 seconds).
*
* @experimental The behavior of this option may change without any announcement.
*/
readonly mediaTimeout?: number;
}
export declare const createRestAPIClient: (props: MastoHttpConfigProps & LogConfigProps & MediaConfigProps) => mastodon.rest.Client;
export declare const createOAuthAPIClient: (props: MastoHttpConfigProps & LogConfigProps) => mastodon.oauth.Client;
interface WebSocketCustomImplProps {
/**
* Custom WebSocket implementation. In Deno, you can use `WebSocket` to avoid potential errors.
*
* Defaults to `window.WebSocket`.
*/
readonly implementation?: unknown;
}
export declare function createStreamingAPIClient(props: WebSocketConfigProps & LogConfigProps & WebSocketCustomImplProps): mastodon.streaming.Client;
export {};