@webext-core/messaging
A light-weight, type-safe wrapper around the browser.runtime
messaging APIs. Supports all browsers (Chrome, Firefox, Safari).
import { defineExtensionMessaging } from '@webext-core/messaging';
interface ProtocolMap {
getStringLength(s: string): number;
}
export const { sendMessage, onMessage } = defineExtensionMessaging<ProtocolMap>();
import { onMessage } from './messaging';
onMessage('getStringLength', message => {
return message.data.length;
});
import { sendMessage } from './messaging';
const length = await sendMessage('getStringLength', 'hello world');
console.log(length);
Get Started
See documentation to get started!