framework7
Version:
Full featured mobile HTML framework for building iOS & Android apps
38 lines (36 loc) • 1.6 kB
TypeScript
import Framework7, { Framework7Plugin } from '../../components/app/app-class';
export namespace ServiceWorker {
interface AppMethods {
serviceWorker: {
/** Service worker container (navigator.serviceWorker) */
container: ServiceWorkerContainer
/** Array with service workers registrations */
registrations: ServiceWorkerRegistration[]
/** Register service worker */
register(path: string, scope?: string): Promise<any>
/** Unregister service worker */
unregister(registration?: ServiceWorkerRegistration): Promise<any>
}
}
interface AppParams {
/** Object with service worker parameters */
serviceWorker?: {
/** Service worker to register path (or array with paths) */
path?: string | string[],
/** Default service worker scope */
scope?: string,
}
}
interface AppEvents {
/** Event will be triggered when service worker successfully registered */
serviceWorkerRegisterSuccess: (registration: ServiceWorkerRegistration) => void
/** Event will be triggered when service worker registration failed */
serviceWorkerRegisterError: (error: Error) => void
/** Event will be triggered when service worker successfully unregistered */
serviceWorkerUnregisterSuccess: (registration: ServiceWorkerRegistration) => void
/** Event will be triggered when service worker unregister failed */
serviceWorkerUnregisterError: (registration: ServiceWorkerRegistration, error: Error) => void
}
}
declare const ServiceWorkerModule: Framework7Plugin;
export default ServiceWorkerModule;