/** Apple 이 쓰는 빈도 척도. 필드마다 같은 enum 을 쓴다. */ export type Frequency = 'NONE' | 'INFREQUENT_OR_MILD' | 'FREQUENT_OR_INTENSE' | 'INFREQUENT' | 'FREQUENT'; export interface AgeRatingDeclaration { [key: string]: string | boolean | undefined; } export declare function getAgeRating(appId: string): Promise<{ appInfoId: string; declarationId?: string; declaration: AgeRatingDeclaration; }>; /** * 연령 등급 설문 갱신 (PATCH /v1/ageRatingDeclarations/{id}). * 넘긴 필드만 바뀐다 — Apple 이 부분 갱신을 허용하므로 전체를 다시 보낼 필요가 없다. */ export declare function updateAgeRating(args: { appId: string; declaration: AgeRatingDeclaration; }): Promise<{ declarationId: string; declaration: AgeRatingDeclaration; }>; /** * 수출 규정 선언 생성 (POST /v1/appEncryptionDeclarations). * buildIds 를 주면 그 빌드들에 바로 연결한다 (POST …/relationships/builds). * * Info.plist 의 ITSAppUsesNonExemptEncryption 으로 해결되는 경우가 더 많다 — * 이 도구는 그게 없어서 ASC 가 선언을 요구할 때의 경로다. */ export declare function declareEncryption(args: { appId: string; appDescription: string; containsProprietaryCryptography: boolean; containsThirdPartyCryptography: boolean; availableOnFrenchStore: boolean; buildIds?: string[]; }): Promise<{ declarationId: string; state?: string; attachedBuilds: number; }>; export interface TerritoryRow { /** territoryAvailability 리소스 id — PATCH 할 때 그대로 쓴다. */ id: string; available?: boolean; releaseDate?: string; preOrderEnabled?: boolean; } /** * 현재 판매 지역 상태 (GET /v1/apps/{id}/appAvailabilityV2 → territoryAvailabilities). * 지역이 175개라 기본은 판매 중인 곳만 세고, `includeTerritories` 로 목록을 받는다. */ export declare function getAvailability(args: { appId: string; includeTerritories?: boolean; limit?: number; }): Promise<{ availabilityId?: string; availableInNewTerritories?: boolean; availableCount: number; unavailableCount: number; territories?: TerritoryRow[]; }>; /** * 지역별 판매 여부·출시일 변경 (PATCH /v1/territoryAvailabilities/{id}). * id 는 appstore_get_availability 결과에서 온다 — 추측해서 만들지 말 것. */ export declare function setTerritoryAvailability(args: { territories: TerritoryRow[]; }): Promise>;