import * as plugins from '../../plugins.js'; import type { IWebPushEncryptedEnvelope } from '../../webpush/classes.webpush-crypto.js'; export declare class WebPushSpoolDoc extends plugins.smartdata.SmartDataDbDoc { id: string; schemaVersion: 1; bindingId: string; lifecycleGeneration: number; /** Credential that created this item; used only for the idempotency namespace. */ credentialId: string; hmacKeyId: string; idempotencyKeyDigest: string; requestDigest: string; subscriptionId: string; endpointDigest: string; vapidKeyId: string; subscriptionEnvelope?: IWebPushEncryptedEnvelope; payloadEnvelope?: IWebPushEncryptedEnvelope; payloadBytes: number; ttlSeconds: number; urgency: plugins.servezoneInterfaces.data.TWebPushUrgency; topic: string | null; state: plugins.servezoneInterfaces.data.TWebPushDeliveryState; attempts: number; acceptedAt: number; updatedAt: number; nextAttemptAt: number; expiresAt: number; /** MUST BE ABSENT while the item is not leased. */ leaseToken?: string; /** MUST BE ABSENT while the item is not leased. */ leaseExpiresAt?: number; /** MUST BE ABSENT until cancellation races with an in-flight send. */ cancelRequestedAt?: number; /** MUST BE ABSENT until an in-flight cancellation records its terminal reason. */ cancelErrorCode?: string; /** MUST BE ABSENT before a terminal transition. */ terminalAt?: number; pushServiceStatusCode: number | null; errorCode: string | null; /** MUST BE ABSENT until terminal retention begins. */ purgeAt?: Date; static getNativeCollection(): plugins.smartdata.SmartdataCollection['mongoDbCollection']; createSavableObject(): Promise; }