import type { ManifestInterface, ManifestPermissions } from "../interface"; import type { DriverInterface } from "../../driver"; import { ContentsZip } from "../../contents"; export declare class ManifestV2 implements ManifestInterface { manifest: ManifestV2JsonObject; constructor(manifest: ManifestV2JsonObject); static parseJson(manifestJson: string): ManifestV2; static loadJsonFile(jsonFilePath: string, driver?: DriverInterface): Promise; get manifestVersion(): 2; get name(): string; get version(): number | string; get description(): string | undefined; get homepageUrl(): string | undefined; get sandbox(): undefined; get allowedHosts(): string[] | undefined; get permissions(): ManifestPermissions | undefined; get json(): ManifestV2JsonObject; validate(_driver?: DriverInterface): Promise<{ valid: true; warnings: never[]; }>; sourceList(): string[]; generateContentsZip(driver: DriverInterface): Promise; } export type ManifestV2JsonObject = { $schema?: string; manifest_version: 2; version: number | string; type?: "APP"; name: { ja?: string; en: string; zh?: string; "zh-TW"?: string; es?: string; "pt-BR"?: string; th?: string; ms?: string; }; description?: { ja?: string; en: string; zh?: string; "zh-TW"?: string; es?: string; "pt-BR"?: string; th?: string; ms?: string; }; icon: string; homepage_url?: { ja: string; en: string; zh: string; "zh-TW"?: string; es?: string; "pt-BR"?: string; th?: string; ms?: string; }; components?: [ { type: "APP_INDEX_HEADER_SPACE" | "APP_INDEX_HEADLESS"; js?: string[]; css?: string[]; html?: string; } ]; config?: { html?: string; js?: string[]; css?: string[]; required_params?: string[]; }; allowed_hosts?: string[]; permissions?: ManifestPermissions; };