converse.js
Version:
Browser based XMPP chat client
136 lines • 6.86 kB
TypeScript
/**
* @param {Event} [event]
*/
export function setLogLevelFromRoute(event?: Event): void;
export function isEmptyMessage(attrs: any): boolean;
/**
* Given a message object, return its text with @ chars
* inserted before the mentioned nicknames.
* @param {import('../shared/message').default} message
*/
export function prefixMentions(message: import("../shared/message").default<any>): any;
export function getRandomInt(max: any): number;
/**
* @param {string} [suffix]
* @return {string}
*/
export function getUniqueId(suffix?: string): string;
declare const _default: {
getRandomInt: typeof getRandomInt;
getUniqueId: typeof getUniqueId;
isEmptyMessage: typeof isEmptyMessage;
onMultipleEvents: typeof onMultipleEvents;
prefixMentions: typeof prefixMentions;
shouldCreateMessage: typeof shouldCreateMessage;
triggerEvent: typeof triggerEvent;
isValidURL(text: string): boolean;
getURL(url: string | URL): URL;
checkFileTypes(types: string[], url: string | URL): boolean;
isURLWithImageExtension(url: string | URL): boolean;
isGIFURL(url: string | URL): boolean;
isAudioURL(url: string | URL, headers?: Headers): boolean;
isVideoURL(url: string | URL, headers?: Headers): boolean;
isImageURL(url: string | URL, headers?: Headers): boolean;
isEncryptedFileURL(url: string | URL): boolean;
withinString(string: string, callback: Function, options?: import("./types.js").ProcessStringOptions): string;
getHeaders(url: string): Promise<Headers>;
getMetadataForURL(o: import("./types.js").MediaURLIndexes): Promise<import("./types.js").MediaURLMetadata>;
getMediaURLsMetadata(text: string, offset?: number): Promise<{
media_urls?: import("./types.js").MediaURLMetadata[];
}>;
getMediaURLs(arr: Array<import("./types.js").MediaURLMetadata>, text: string): import("./types.js").MediaURLMetadata[];
addMediaURLsOffset(arr: Array<import("./types.js").MediaURLMetadata>, text: string, offset?: number): import("./types.js").MediaURLMetadata[];
firstCharToUpperCase(text: string): string;
getLongestSubstring(string: string, candidates: string[]): string;
isString(s: any): boolean;
getDefaultStore(): "session" | "persistent";
createStore(id: any, store: any): any;
initStorage(model: any, id: any, type: any): void;
isErrorStanza(stanza: Element): boolean;
isForbiddenError(stanza: Element): boolean;
isServiceUnavailableError(stanza: Element): boolean;
getAttributes(stanza: Element): object;
toStanza: typeof import("strophe.js").Stanza.toElement;
isUniView(): boolean;
isTestEnv(): boolean;
getUnloadEvent(): "pagehide" | "beforeunload" | "unload";
replacePromise(_converse: ConversePrivateGlobal, name: string): void;
shouldClearCache(_converse: ConversePrivateGlobal): boolean;
tearDown(_converse: ConversePrivateGlobal): Promise<any>;
clearSession(_converse: ConversePrivateGlobal): any;
debounce(func: Function, timeout: number): (...args: any[]) => void;
waitUntil(func: Function, max_wait?: number, check_delay?: number): Promise<any>;
getOpenPromise: typeof promise.getOpenPromise;
merge(dst: any, src: any): void;
isError(obj: unknown): boolean;
isFunction(val: unknown): boolean;
isUndefined(x: unknown): boolean;
isErrorObject(o: unknown): boolean;
isPersistableModel(model: import("@converse/skeletor").Model): boolean;
isValidJID(jid?: string | null): boolean;
isValidMUCJID(jid: string): boolean;
isSameBareJID(jid1: string, jid2: string): boolean;
isSameDomain(jid1: string, jid2: string): boolean;
getJIDFromURI(jid: string): string;
isOwnJID(jid: string, include_resource?: boolean): boolean;
initPlugins(_converse: ConversePrivateGlobal): void;
initClientConfig(_converse: ConversePrivateGlobal): Promise<void>;
initSessionStorage(_converse: ConversePrivateGlobal): Promise<void>;
initPersistentStorage(_converse: ConversePrivateGlobal, store_name: string, key?: string): void;
setUserJID(jid: string): Promise<string>;
initSession(_converse: ConversePrivateGlobal, jid: string): Promise<void>;
registerGlobalEventHandlers(_converse: ConversePrivateGlobal): void;
cleanup(_converse: ConversePrivateGlobal): Promise<void>;
attemptNonPreboundSession(credentials?: import("./types.js").Credentials, automatic?: boolean): Promise<void>;
savedLoginInfo(jid: string): Promise<Model>;
safeSave(model: Model, attributes: any, options: any): void;
isElement(el: unknown): boolean;
isTagEqual(stanza: Element | typeof import("strophe.js").Builder, name: string): boolean;
stringToElement(s: string): Element;
queryChildren(el: HTMLElement, selector: string): ChildNode[];
siblingIndex(el: Element): number;
decodeHTMLEntities(str: string): string;
getSelectValues(select: HTMLSelectElement): string[];
webForm2xForm(field: HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement): Element;
getCurrentWord(input: HTMLInputElement | HTMLTextAreaElement, index?: number, delineator?: string | RegExp): string;
isMentionBoundary(s: string): boolean;
replaceCurrentWord(input: HTMLInputElement, new_value: string): void;
placeCaretAtEnd(textarea: HTMLTextAreaElement): void;
colorize(s: string): Promise<string>;
appendArrayBuffer(buffer1: any, buffer2: any): ArrayBufferLike;
arrayBufferToHex(ab: any): any;
arrayBufferToString(ab: any): string;
stringToArrayBuffer(string: any): ArrayBufferLike;
arrayBufferToBase64(ab: any): string;
base64ToArrayBuffer(b64: any): ArrayBufferLike;
hexToArrayBuffer(hex: any): ArrayBufferLike;
unique<T extends unknown>(arr: Array<T>): Array<T>;
} & CommonUtils & PluginUtils;
export default _default;
export type CommonUtils = Record<string, Function>;
/**
* The utils object
*/
export type PluginUtils = Record<"muc" | "mam", CommonUtils>;
/**
* Call the callback once all the events have been triggered
* @param { Array } events: An array of objects, with keys `object` and
* `event`, representing the event name and the object it's triggered upon.
* @param { Function } callback: The function to call once all events have
* been triggered.
*/
declare function onMultipleEvents(events: any[], callback: Function): void;
declare function shouldCreateMessage(attrs: any): any;
/**
* @param {Element} el
* @param {string} name
* @param {string} [type]
* @param {boolean} [bubbles]
* @param {boolean} [cancelable]
*/
declare function triggerEvent(el: Element, name: string, type?: string, bubbles?: boolean, cancelable?: boolean): void;
import * as session from './session.js';
import * as promise from './promise.js';
import { Model } from '@converse/skeletor';
import * as init from './init.js';
//# sourceMappingURL=index.d.ts.map