---
title: "AbstractWorker | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

> For AI agents: a documentation index is available at [/llms.txt](https://docs.maptiler.com/llms.txt). Markdown versions of all pages are available by appending .md to any URL.

# Interface AbstractWorker

interface AbstractWorker {  
    [onerror](#onerror): ((this: AbstractWorker, ev: ErrorEvent) \=> any) | null;  
    [addEventListener](#addeventlistener-1)<[K](#addeventlistenerk) extends "error"\>(  
        type: [K](#addeventlistenerk),  
        listener: (this: AbstractWorker, ev: [AbstractWorkerEventMap](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.AbstractWorkerEventMap/)\[[K](#addeventlistenerk)\]) \=> any,  
        options?: boolean | AddEventListenerOptions,  
    ): void;  
    [addEventListener](#addeventlistener-2)(  
        type: string,  
        listener: [EventListenerOrEventListenerObject](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EventListenerOrEventListenerObject/),  
        options?: boolean | AddEventListenerOptions,  
    ): void;  
    [removeEventListener](#removeeventlistener-1)<[K](#removeeventlistenerk) extends "error"\>(  
        type: [K](#removeeventlistenerk),  
        listener: (this: AbstractWorker, ev: [AbstractWorkerEventMap](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.AbstractWorkerEventMap/)\[[K](#removeeventlistenerk)\]) \=> any,  
        options?: boolean | EventListenerOptions,  
    ): void;  
    [removeEventListener](#removeeventlistener-2)(  
        type: string,  
        listener: [EventListenerOrEventListenerObject](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EventListenerOrEventListenerObject/),  
        options?: boolean | EventListenerOptions,  
    ): void;  
}

#### Hierarchy ([View Summary](https://docs.maptiler.com/sdk-js/api-reference/hierarchy/#Externals.AbstractWorker))

-   AbstractWorker
    -   [Worker](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Worker/)

##### Index

### Properties[](#properties)

[onerror](#onerror)

### Methods[](#methods)

[addEventListener](#addeventlistener) [removeEventListener](#removeeventlistener)

## Properties[](#properties-1)

### onerror[](#onerror)

onerror: ((this: AbstractWorker, ev: ErrorEvent) \=> any) | null

[MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/error_event)

## Methods[](#methods-1)

### addEventListener[](#addeventlistener)

-   addEventListener<[K](#addeventlistenerk) extends "error"\>(  
        type: [K](#addeventlistenerk),  
        listener: (this: AbstractWorker, ev: [AbstractWorkerEventMap](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.AbstractWorkerEventMap/)\[[K](#addeventlistenerk)\]) \=> any,  
        options?: boolean | AddEventListenerOptions,  
    ): void[](#addeventlistener-1)
    
    #### Type Parameters
    
    -   K extends "error"
    
    #### Parameters
    
    -   type: [K](#addeventlistenerk)
    -   listener: (this: AbstractWorker, ev: [AbstractWorkerEventMap](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.AbstractWorkerEventMap/)\[[K](#addeventlistenerk)\]) \=> any
    -   `Optional`options: boolean | AddEventListenerOptions
    
    #### Returns void
    
-   addEventListener(  
        type: string,  
        listener: [EventListenerOrEventListenerObject](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EventListenerOrEventListenerObject/),  
        options?: boolean | AddEventListenerOptions,  
    ): void[](#addeventlistener-2)
    
    #### Parameters
    
    -   type: string
    -   listener: [EventListenerOrEventListenerObject](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EventListenerOrEventListenerObject/)
    -   `Optional`options: boolean | AddEventListenerOptions
    
    #### Returns void
    

### removeEventListener[](#removeeventlistener)

-   removeEventListener<[K](#removeeventlistenerk) extends "error"\>(  
        type: [K](#removeeventlistenerk),  
        listener: (this: AbstractWorker, ev: [AbstractWorkerEventMap](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.AbstractWorkerEventMap/)\[[K](#removeeventlistenerk)\]) \=> any,  
        options?: boolean | EventListenerOptions,  
    ): void[](#removeeventlistener-1)
    
    #### Type Parameters
    
    -   K extends "error"
    
    #### Parameters
    
    -   type: [K](#removeeventlistenerk)
    -   listener: (this: AbstractWorker, ev: [AbstractWorkerEventMap](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.AbstractWorkerEventMap/)\[[K](#removeeventlistenerk)\]) \=> any
    -   `Optional`options: boolean | EventListenerOptions
    
    #### Returns void
    
-   removeEventListener(  
        type: string,  
        listener: [EventListenerOrEventListenerObject](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EventListenerOrEventListenerObject/),  
        options?: boolean | EventListenerOptions,  
    ): void[](#removeeventlistener-2)
    
    #### Parameters
    
    -   type: string
    -   listener: [EventListenerOrEventListenerObject](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EventListenerOrEventListenerObject/)
    -   `Optional`options: boolean | EventListenerOptions
    
    #### Returns void
