UNPKG

1.52 kBTypeScriptView Raw
1import type { BaseTransportOptions, OfflineTransportOptions, Transport } from '@sentry/core';
2type Store = <T>(callback: (store: IDBObjectStore) => T | PromiseLike<T>) => Promise<T>;
3/** Create or open an IndexedDb store */
4export declare function createStore(dbName: string, storeName: string): Store;
5/** Insert into the end of the store */
6export declare function push(store: Store, value: Uint8Array | string, maxQueueSize: number): Promise<void>;
7/** Insert into the front of the store */
8export declare function unshift(store: Store, value: Uint8Array | string, maxQueueSize: number): Promise<void>;
9/** Pop the oldest value from the store */
10export declare function shift(store: Store): Promise<Uint8Array | string | undefined>;
11export interface BrowserOfflineTransportOptions extends Omit<OfflineTransportOptions, 'createStore'> {
12 /**
13 * Name of indexedDb database to store envelopes in
14 * Default: 'sentry-offline'
15 */
16 dbName?: string;
17 /**
18 * Name of indexedDb object store to store envelopes in
19 * Default: 'queue'
20 */
21 storeName?: string;
22 /**
23 * Maximum number of envelopes to store
24 * Default: 30
25 */
26 maxQueueSize?: number;
27}
28/**
29 * Creates a transport that uses IndexedDb to store events when offline.
30 */
31export declare function makeBrowserOfflineTransport<T extends BaseTransportOptions>(createTransport?: (options: T) => Transport): (options: T & BrowserOfflineTransportOptions) => Transport;
32export {};
33//# sourceMappingURL=offline.d.ts.map
\No newline at end of file