@walletpass/pass-js
Version:
Apple Wallet Pass generating and pushing updates from Node.js
38 lines • 1.88 kB
TypeScript
import * as http2 from 'node:http2';
import { type KeyObject } from 'node:crypto';
import { Pass } from './pass.js';
import type { PassStyle, ApplePass, Options } from './interfaces.js';
import { PassBase } from './lib/base-pass.js';
import type { PassImages } from './lib/images.js';
import type { Localizations } from './lib/localizations.js';
import { type Personalization } from './lib/personalization.js';
export declare class Template extends PassBase {
key?: KeyObject;
certificate?: string;
private apn?;
constructor(style?: PassStyle, fields?: Partial<ApplePass>, images?: PassImages, localization?: Localizations, options?: Options, personalization?: Personalization);
/**
* Load a Template, images, and key from a trusted directory on disk.
*
* Do not pass attacker-controlled template folders. Loading untrusted
* pass bundles can force excessive memory allocation and may crash or stall
* the process.
*/
static load(folderPath: string, keyPassword?: string, options?: Options): Promise<Template>;
/**
* Reconstruct a Template from a trusted pre-zipped buffer (e.g. a .pkpass
* fetched from S3). Reads pass.json, images, and localization strings out of
* the bundle.
*
* Do not pass attacker-controlled ZIP or .pkpass buffers. Loading untrusted
* pass bundles can force excessive memory allocation and may crash or stall
* the process.
*/
static fromBuffer(buffer: Buffer, options?: Options): Promise<Template>;
setPrivateKey(pem: string, password?: string): void;
setCertificate(pem: string, password?: string): void;
loadCertificate(signerPemFile: string, password?: string): Promise<void>;
pushUpdates(pushToken: string): Promise<http2.IncomingHttpHeaders>;
createPass(fields?: Partial<ApplePass>): Pass;
}
//# sourceMappingURL=template.d.ts.map