import type { DiscordClient } from "./discord-client.js"; import type { DiscordApplication, RequestOptions } from "./types.js"; export type ApplicationSkuTypeName = "consumable" | "durable" | "subscription" | "subscription-group" | "unknown"; export type ApplicationSkuPurchaseScope = "conflicting" | "guild" | "unspecified" | "user"; export interface ApplicationSkuRecord { flags: { available: boolean; guildSubscription: boolean; purchaseScope: ApplicationSkuPurchaseScope; unknownBitCount: number; userSubscription: boolean; }; id: string; name: string; nameCharacters: number; slug: string; slugCharacters: number; type: { code: number; name: ApplicationSkuTypeName; }; unknownFieldCount: number; } export type ApplicationSkuFindingCode = "available-offerings" | "conflicting-purchase-scope" | "empty-catalog" | "future-schema-evidence" | "unavailable-records"; export interface ApplicationSkuFinding { code: ApplicationSkuFindingCode; severity: "info" | "warning"; summary: string; } export interface ApplicationSkuAuditResult { application: { botId: string; id: string; }; catalog: { availability: { available: number; unavailable: number; }; purchaseScopes: { conflicting: number; guild: number; unspecified: number; user: number; }; types: { consumable: number; durable: number; subscription: number; subscriptionGroups: number; unknown: number; }; }; evidence: { unknownFields: number; unknownFlagBits: number; unknownTypes: number; }; findingCounts: { info: number; warnings: number; }; findings: ApplicationSkuFinding[]; inventory: { completeness: "complete-current-application"; count: number; documentedOwnerCreatedLimit: number; localRecordLimit: number; projectionComplete: boolean; }; privacy: { omitted: readonly string[]; persistence: "none"; rawPayloads: "omitted"; text: "transient-untrusted"; unknownFields: "counts-only"; }; records: ApplicationSkuRecord[]; schemaVersion: number; status: "ok"; warnings: readonly string[]; } export interface ApplicationSkuAuditServiceClient extends Pick { } export interface ApplicationSkuAuditServiceOptions { client: ApplicationSkuAuditServiceClient; } export declare class ApplicationSkuAuditService { #private; constructor(options: ApplicationSkuAuditServiceOptions); audit(application: DiscordApplication, botId: string, options?: RequestOptions): Promise; } //# sourceMappingURL=application-sku-audit-service.d.ts.map