import "@webview-bridge/web"; //#region src/apis/_bridge/createAsyncBridge/createAsyncBridge.d.ts /** * 이름 문자열로 비동기 브릿지를 호출하는 함수를 만들어요. * 계약 타입의 보호를 받지 않는 탈출구예요 — 공개 API가 있으면 그쪽을 쓰세요. */ declare function createAsyncBridge(method: string): (...args: Args) => Promise; //#endregion //#region src/apis/_bridge/createConstantBridge/createConstantBridge.d.ts /** * 이름 문자열로 상수를 조회하는 함수를 만들어요. * 계약 타입의 보호를 받지 않는 탈출구예요 — 공개 API가 있으면 그쪽을 쓰세요. */ declare function createConstantBridge(name: string): () => T; //#endregion //#region src/apis/_bridge/createEventBridge/createEventBridge.d.ts /** * 이름 문자열로 이벤트 브릿지를 구독하는 함수를 만들어요. * 계약 타입의 보호를 받지 않는 탈출구예요 — 공개 API가 있으면 그쪽을 쓰세요. */ declare function createEventBridge(method: string): (args: { options?: Options; onEvent: (event: Event) => void; onError: (error: Error) => void; }) => () => void; //#endregion //#region src/webview-bridge/generated/webview-bridge.d.ts interface FetchTossAdOptions { adGroupId: string; sdkId: string; availableStyleIds: string[]; } interface ShowAppsInTossAdmobParams { adGroupId: string; } type ShowAppsInTossAdmobEvent = { type: "clicked"; } | { type: "dismissed"; } | { type: "failedToShow"; } | { type: "impression"; } | { type: "show"; } | { type: "requested"; } | { type: "userEarnedReward"; data: { unitType: string; unitAmount: number; }; }; interface ContactsViralParams { moduleId: string; } interface ContactsViralRewardData { rewardAmount: number; rewardUnit: string; } interface ContactsViralRewardEvent { type: "sendViral"; data: ContactsViralRewardData; } interface ContactsViralCloseData { closeReason: "clickBackButton" | "noReward"; sentRewardAmount?: number; sendableRewardsCount?: number; sentRewardsCount: number; rewardUnit?: string; } interface ContactsViralCloseEvent { type: "close"; data: ContactsViralCloseData; } type ContactsViralEvent = ContactsViralRewardEvent | ContactsViralCloseEvent; interface IapCreateOneTimePurchaseOrderResult { orderId: string; displayName: string; displayAmount: string; amount: number; currency: string; fraction: number; miniAppIconUrl: string | null; } interface BasicProductListItem { sku: string; displayAmount: string; displayName: string; iconUrl: string; description: string; } interface ConsumableProductListItem extends BasicProductListItem { type: "CONSUMABLE"; } interface NonConsumableProductListItem extends BasicProductListItem { type: "NON_CONSUMABLE"; } type Offer = { type: "FREE_TRIAL"; offerId: string; period: string; } | { type: "NEW_SUBSCRIPTION"; offerId: string; period: string; displayAmount: string; } | { type: "RETURNING"; offerId: string; period: string; displayAmount: string; }; interface SubscriptionProductListItem extends BasicProductListItem { type: "SUBSCRIPTION"; renewalCycle: "WEEKLY" | "MONTHLY" | "YEARLY"; offers?: Offer[]; } type IapProductListItem = ConsumableProductListItem | NonConsumableProductListItem | SubscriptionProductListItem; interface IapGetProductItemListResult { products: IapProductListItem[]; } interface PendingOrder { orderId: string; sku: string; paymentCompletedDate: string; } interface GetPendingOrdersResult { orders: PendingOrder[]; } interface CompletedOrRefundedOrder { orderId: string; sku: string; status: "COMPLETED" | "REFUNDED"; date: string; } interface CompletedOrRefundedOrdersResult { hasNext: boolean; nextKey?: string | null; orders: CompletedOrRefundedOrder[]; } interface GetCompletedOrRefundedOrdersParams { key?: string | null; } interface IapSubscriptionInfoResult$1 { catalogId: number; status: "ACTIVE" | "EXPIRED" | "IN_GRACE_PERIOD" | "ON_HOLD" | "PAUSED" | "REVOKED"; expiresAt: string | null; isAutoRenew: boolean; gracePeriodExpiresAt: string | null; isAccessible: boolean; } interface LoadFullScreenAdOptions { adGroupId: string; } type LoadFullScreenAdEvent = { type: "loaded"; }; interface ShowFullScreenAdOptions { adGroupId: string; } type ShowFullScreenAdEvent = { type: "clicked"; } | { type: "dismissed"; } | { type: "failedToShow"; } | { type: "impression"; } | { type: "show"; } | { type: "requested"; } | { type: "userEarnedReward"; data: { unitType: string; unitAmount: number; }; }; interface LocationCoords { latitude: number; longitude: number; altitude: number; accuracy: number; altitudeAccuracy: number; heading: number; } interface Location { accessLocation?: "FINE" | "COARSE"; timestamp: number; coords: LocationCoords; } type NotificationAgreementResult = "newAgreement" | "alreadyAgreed" | "agreementRejected"; interface RequestNotificationAgreementParams { templateCode: string; } interface LoadAppsInTossAdmobParams { adGroupId: string; referrer?: string | null; } /** 광고 네트워크 응답 정보예요. 네이티브 응답을 좁히지 않고 그대로 흘려보내요. */ interface LoadAppsInTossAdmobAdNetworkInfo { adSourceId: string; adSourceName: string; adSourceInstanceId: string; adSourceInstanceName: string; adNetworkClassName: string | null; } /** 광고 로드 응답 정보예요. */ interface LoadAppsInTossAdmobResponseInfo { adNetworkInfoArray: LoadAppsInTossAdmobAdNetworkInfo[]; loadedAdNetworkInfo: LoadAppsInTossAdmobAdNetworkInfo | null; responseId: string | null; } interface LoadAppsInTossAdmobResult { adGroupId: string; adUnitId: string; responseInfo: LoadAppsInTossAdmobResponseInfo; } interface GetCachedStatusAppsInTossAdmobParams { adGroupId: string; } interface TossAdEventLogParams { log_name: string; log_type: string; params: Record; } interface ContactEntity { name: string; phoneNumber: string; } interface FetchContactsParams { size: number; offset: number; query?: { contains?: string; }; } interface FetchContactsResult { result: ContactEntity[]; nextOffset: number | null; done: boolean; } type GameCenterGameProfileResponse = { statusCode: "PROFILE_NOT_FOUND"; } | { statusCode: "SUCCESS"; nickname: string; profileImageUri: string; }; interface SubmitGameCenterLeaderBoardScoreResponse { statusCode: "SUCCESS" | "LEADERBOARD_NOT_FOUND" | "PROFILE_NOT_FOUND" | "UNPARSABLE_SCORE"; } type LogParam = string | number | boolean | null | undefined | symbol; interface EventLogParams$1 { log_name: string; log_type: string; params: Record; } interface AppLoginResponse { authorizationCode: string; referrer: "DEFAULT" | "SANDBOX"; } interface AppsInTossSignTossCertParams { txId: string; } interface GetAnonymousKeyResponse { hash: string; type: "HASH"; } interface GetConsentedUserDataOptions { /** 동의 항목 키예요 (예: "cud_delivery"). */ consentedUserDataKey: string; /** 사용자가 이전에 거부했어도 약관 웹뷰를 다시 띄울지예요. 기본은 false예요. */ shouldRequestAgreementWhenUserDeclined?: boolean; } interface GetDeclaredAgeRangeParams { ageGates: number[]; } interface ImageResponse { id: string; dataUri: string; } interface OpenCameraParams { base64?: boolean; maxWidth?: number; } interface FetchAlbumPhotosParams { base64?: boolean; maxCount?: number; maxWidth?: number; } type AlbumItemType = "PHOTO" | "VIDEO"; interface FetchAlbumItemsOptions { types?: AlbumItemType[]; maxCount?: number; maxWidth?: number; base64?: boolean; } interface AlbumItemResponse { id: string; dataUri: string; type: AlbumItemType; } interface SaveBase64DataParams { data: string; fileName: string; mimeType: string; } interface OpenPDFViewerParams { data: string; filename?: string; } type OpenPDFViewerResult = "CLOSE"; interface CheckoutPaymentParams { payToken: string; } interface CheckoutPaymentResult { success: boolean; reason?: string; } interface RequestTossPayPaysBillingParams { wrappedToken: string; } interface RequestTossPayPaysBillingResult { success: boolean; reason?: string; } type PermissionParams = { name: "clipboard"; access: "read" | "write"; } | { name: "geolocation"; access: "access"; } | { name: "contacts"; access: "read" | "write"; } | { name: "photos"; access: "read" | "write"; } | { name: "camera"; access: "access"; } | { name: "microphone"; access: "access"; }; type PermissionName = PermissionParams["name"]; type PermissionAccess = PermissionParams["access"]; type PermissionStatus = "notDetermined" | "denied" | "allowed"; type PermissionDialogResult = "allowed" | "denied"; interface GrantPromotionRewardParams { params: { promotionCode: string; amount: number; }; } interface GrantPromotionRewardResponse { key: string; } interface GetStorageItemsResult { [key: string]: string | null; } type DeviceOrientation = "portrait" | "landscape"; type AddAccessoryButtonParams = { id: string; title: string; icon: { name: string; }; }; type CreateAnonymousKeyAuthCodeResponse = { code: string; expiresIn: number; }; type GetViralCampaignParams = { campaignId: string; }; type GetViralCampaignResponse = { campaignId: string; benefitName: string; display: { title: string | null; benefitText: string | null; conditionText: string | null; ctaText: string | null; }; active: boolean; campaignStatus: "WAITING" | "IN_PROGRESS" | "ENDED"; participationAvailable: boolean; participationUnavailableReason: "INACTIVE" | "NOT_STARTED" | "ENDED" | "ALL_RULES_ACHIEVED" | null; rules: Array<{ ruleId: string; ruleKey: string; revision: number; title: string; currentValue: number; targetValue: number; status: "IN_PROGRESS" | "ACHIEVED" | "EXPIRED"; achievedAt: string | null; }>; }; type ShareViralCampaignParams = { campaignId: string; /** 공유 메시지 제목이에요. 비어 있으면 캠페인에 설정된 값을 사용해요. */ title?: string; /** 공유 메시지 설명이에요. 비어 있으면 캠페인에 설정된 값을 사용해요. */ description?: string; }; interface TrackViralParams { eventName: string; } interface SafeAreaInsets$2 { top: number; left: number; right: number; bottom: number; } interface AppsInTossGlobals { deploymentId: string; brandDisplayName: string; brandIcon: string; brandPrimaryColor: string; } //#endregion //#region src/apis/domains/ads/loadAppsInTossAdMob/loadAppsInTossAdMob.d.ts type LoadAdMobOptions = LoadAppsInTossAdmobParams; type LoadAdMobResult = LoadAppsInTossAdmobResult; type LoadAdMobResponseInfo = LoadAppsInTossAdmobResponseInfo; type LoadAdMobAdNetworkInfo = LoadAppsInTossAdmobAdNetworkInfo; type LoadAdMobEvent = { type: "loaded"; data: LoadAdMobResult; }; //#endregion //#region src/apis/domains/ads/showAppsInTossAdMob/showAppsInTossAdMob.d.ts type ShowAdMobOptions = ShowAppsInTossAdmobParams; type ShowAdMobEvent = ShowAppsInTossAdmobEvent; //#endregion //#region src/apis/domains/ads/isAppsInTossAdMobLoaded/isAppsInTossAdMobLoaded.d.ts type IsAdMobLoadedOptions = GetCachedStatusAppsInTossAdmobParams; //#endregion //#region src/apis/domains/ads/TossAds/types.d.ts type Environment$1 = "alpha" | "live"; type DeviceOS = "IOS" | "ANDROID"; type DeviceAttStatus = "NOT_DETERMINED" | "RESTRICTED" | "DENIED" | "AUTHORIZED"; type DeviceCarrier = "SKT" | "KT" | "LGU" | "SKT_MVNO" | "KT_MVNO" | "LG_MVNO"; type RequestHeaders = Record; interface DeviceInfo { os?: DeviceOS; osVersion?: string; ua?: string; ifa?: string; ifv?: string | null; attStatus?: DeviceAttStatus | null; model?: string; carrier?: DeviceCarrier; } interface SafeAreaInsets$1 { top: string; bottom: string; left: string; right: string; } interface RuntimeInfo { safeAreaInsets?: SafeAreaInsets$1; } type AdOpener = (url: string, target?: string, features?: string) => void; /** SDK가 `onTrackingRequest`로 위임하는 트래킹 요청이에요. ads-sdk/web의 동형 계약이에요. */ interface TrackingRequestBase { adGroupId: string; requestId?: string; creativeId?: string; mediationId?: string; eventContextToken?: string; errorEndpoint?: string; } interface EventTrackingRequest extends TrackingRequestBase { type: "EVENT_TRACKING"; eventName: string; urls: string[]; eventPayload: string; } type TrackingRequest = EventTrackingRequest; interface AdConfig { environment: Environment$1; apiEndpoint?: string; deviceInfo?: DeviceInfo; requestHeaders?: RequestHeaders; runtimeInfo?: RuntimeInfo; opener?: AdOpener; customAdFetcher?: CustomAdFetcher; /** * 트래킹 전송 위임(SDK 3.1.0+)이에요. 지정 시 SDK는 직접 전송하지 않고 이 콜백에 위임해요. * fire-and-forget이며 실패 관측은 사용측 책임이에요. 현재 위임 대상은 EVENT_TRACKING이에요. */ onTrackingRequest?: (request: TrackingRequest) => void | Promise; } interface AdRequest { spaceUnitId: string; options?: { dummyAdFormat?: string; maxSize?: number; video?: { maxDurationMs?: number; }; }; } type AdResponseStatus = "OK" | "NO_AD" | "BLOCKED" | "ERROR" | "TIMEOUT" | "INVALID_SPACE" | "INVALID_REQUEST" | "LIMITED_AD" | "CONSENT_REQUIRED" | "TEST_MODE"; interface AdResponse { requestId?: string; eventContextToken?: string; status?: AdResponseStatus; ads: Ad[]; ext?: AdResponseExt; } interface Ad { styleId: string; creative: Record; eventTrackingUrls?: string[]; eventTypes?: string[]; eventPayload?: string; requestId?: string; } interface TossAdsMediation { mediationId: string; priority: Array<"TOSS" | "ADMOB">; admob: { adUnitId: string; placementId: number; } | null; endpoint?: { result?: string; exposure?: string; error?: string; }; } interface AdResponseExt { skippableOffsetSeconds?: number; reward?: { type: string; amount: number; }; isAdBadgeEnabled?: boolean; refetchSeconds?: number | null; mediation?: TossAdsMediation; } interface ApiResponse { resultType: "SUCCESS" | "HTTP_TIMEOUT" | "NETWORK_ERROR" | "EXECUTION_FAIL" | "INTERRUPTED" | "INTERNAL_ERROR" | "FAIL"; success?: T; error?: { errorType?: number; errorCode?: string; reason?: string; data?: Record; title?: string; }; } type CustomAdFetcher = (endpoint: string, request: AdRequest, headers?: RequestHeaders) => Promise>; interface InitializeOptions { callbacks?: { onInitialized?: () => void; onInitializationFailed?: (error: Error) => void; }; } interface BannerSlotEventPayload { slotId: string; adGroupId: string; adMetadata: { creativeId: string; requestId: string; }; } interface BannerSlotErrorPayload { slotId: string; adGroupId: string; adMetadata: Record; error: { code: number; message: string; domain?: string; /** 광고를 받은 뒤에 발생한 에러에만 포함돼요. */ mediationId?: string; }; } interface BannerSlotCallbacks { onAdRendered?: (payload: BannerSlotEventPayload) => void; onAdViewable?: (payload: BannerSlotEventPayload) => void; onAdClicked?: (payload: BannerSlotEventPayload) => void; onAdImpression?: (payload: BannerSlotEventPayload) => void; onAdFailedToRender?: (payload: BannerSlotErrorPayload) => void; onNoFill?: (payload: { slotId: string; adGroupId: string; adMetadata: Record; }) => void; } interface BannerSlotOptions { spaceId: string; autoLoad?: boolean; dummyAdFormat?: string; maxVideoDurationMs?: number; refetchIntervalMs?: number; theme?: "light" | "dark"; padding?: string; renderPadding?: (styleId: string) => string; callbacks?: BannerSlotCallbacks; } interface BannerSlot { load(): void | Promise; destroy(): void; } interface BannerNamespace { createSlot(target: string | HTMLElement, options: BannerSlotOptions): BannerSlot; destroy(slotId: string): void; destroyAll(): void; } interface AdsSdkGlobal { init(config: AdConfig): void; banner: BannerNamespace; isInitialized(): boolean; } declare global { interface Window { TossAdsSpaceKit?: AdsSdkGlobal; } } interface AttachOptions { theme?: "light" | "dark"; padding?: string; callbacks?: BannerSlotCallbacks; } interface AttachBannerOptions { theme?: "auto" | "light" | "dark"; tone?: "blackAndWhite" | "grey"; variant?: "card" | "expanded"; callbacks?: BannerSlotCallbacks; } interface AttachBannerResult { destroy: () => void; } //#endregion //#region src/apis/domains/ads/TossAds/banner.d.ts declare function initialize(options: InitializeOptions): void; /** * @deprecated attach는 더 이상 권장되지 않습니다. attachBanner를 사용해주세요. */ declare function attach(adGroupId: string, target: string | HTMLElement, options?: AttachOptions): void; declare function attachBanner(adGroupId: string, target: string | HTMLElement, options?: AttachBannerOptions): AttachBannerResult; declare function destroy(slotId: string): void; declare function destroyAll(): void; declare function isSupported$3(): boolean; declare const TossAds: { initialize: typeof initialize & { isSupported: typeof isSupported$3; }; /** * @deprecated attach는 더 이상 권장되지 않습니다. attachBanner를 사용해주세요. */ attach: typeof attach & { isSupported: typeof isSupported$3; }; attachBanner: typeof attachBanner & { isSupported: typeof isSupported$3; }; destroy: typeof destroy & { isSupported: typeof isSupported$3; }; destroyAll: typeof destroyAll & { isSupported: typeof isSupported$3; }; }; //#endregion //#region src/apis/domains/ads/loadFullScreenAd/loadFullScreenAd.d.ts /** * 전면 광고를 미리 불러와서, 보여줄 시점에 바로 노출할 수 있도록 준비해요. * `isSupported()`로 지원 여부를 확인할 수 있어요. */ declare const loadFullScreenAd: ((params: { options?: LoadFullScreenAdOptions; onEvent: (event: LoadFullScreenAdEvent) => void; onError: (error: Error) => void; }) => () => void) & { isSupported: () => boolean; }; //#endregion //#region src/apis/domains/ads/showFullScreenAd/showFullScreenAd.d.ts /** * 미리 불러온 전면 광고를 사용자에게 노출해요. * `isSupported()`로 지원 여부를 확인할 수 있어요. */ declare const showFullScreenAd: ((params: { /** v2 호환으로 옵셔널이에요. 값이 없으면 v2처럼 그대로 전달되어 네이티브가 에러를 반환해요. */ options?: ShowFullScreenAdOptions; onEvent: (event: ShowFullScreenAdEvent) => void; onError: (error: Error) => void; }) => () => void) & { isSupported: () => boolean; }; //#endregion //#region src/apis/domains/ads/index.d.ts /** * v2 호환 별칭이에요. 도메인 멤버(`Ads.loadAdMob` 등)와 같은 인스턴스를 참조해요. */ declare const GoogleAdMob: { loadAppsInTossAdMob: ((params: { options?: LoadAdMobOptions; onEvent: (event: LoadAdMobEvent) => void; onError: (error: Error) => void; }) => () => void) & { isSupported: () => boolean; }; showAppsInTossAdMob: ((params: { options?: ShowAdMobOptions; onEvent: (event: ShowAdMobEvent) => void; onError: (error: Error) => void; }) => () => void) & { isSupported: () => boolean; }; isAppsInTossAdMobLoaded: ((options: IsAdMobLoadedOptions) => Promise) & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/analytics/log/log.d.ts /** * 와이어 계약(log_type: string)은 넓게 유지하고, 공개 표면은 구 SDK와 동일하게 * log_type 유니온으로 좁혀서 제공해요. */ interface EventLogParams extends Omit { log_type: "debug" | "info" | "warn" | "error" | "event" | "screen" | "impression" | "click" | "popup"; } /** * 앱에서 발생하는 이벤트를 기록해요. * * `params`에는 `anonymous_key`가 기본 파라미터로 자동 포함되고, `undefined`, `null` 값은 * 제외된 뒤 나머지는 string으로 정규화돼요. sandbox 환경에서는 콘솔에만 출력되고 * 전송되지 않아요. 미지원 앱 버전에서는 에러 없이 조용히 무시돼요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Analytics.log`를 사용해주세요. * @since Toss - Android 5.208.0, iOS 5.208.0 */ declare const eventLog: (params: EventLogParams) => Promise; //#endregion //#region src/apis/domains/analytics/internal.d.ts type LoggerParams = { log_name?: string; } & { [key: string]: LogParam; }; //#endregion //#region src/apis/domains/analytics/analytics.d.ts declare const Analytics: { /** * 앱에서 발생하는 이벤트를 기록해요. * `params`에는 `anonymous_key`가 자동 포함되고, `undefined`는 제외된 뒤 나머지는 string으로 정규화돼요. * sandbox에서는 콘솔에만 출력되고, 미지원 앱 버전에서는 에러 없이 조용히 무시돼요. * @since Toss - Android 5.208.0, iOS 5.208.0 */ log: (params: EventLogParams) => Promise; /** * 화면 진입 시점의 분석 로그를 남겨요. */ screen: (params?: LoggerParams) => Promise | undefined; /** * 요소가 노출되면 남기는 분석 로그를 기록해요. */ impression: (params?: LoggerParams) => Promise | undefined; /** * 터치나 클릭이 발생하면 분석 로그를 남겨요. */ click: (params?: LoggerParams) => Promise | undefined; }; //#endregion //#region src/apis/domains/clipboard/clipboard.d.ts declare const Clipboard: { /** * 클립보드에 저장된 텍스트를 가져와요. 텍스트가 없으면 빈 문자열을 반환해요. * 권한이 없으면 `GetClipboardTextPermissionError`가 발생해요. */ getText: PermissionFunctionWithDialog<() => Promise>; /** * 텍스트를 클립보드에 복사해요. * 권한이 없으면 `SetClipboardTextPermissionError`가 발생해요. */ setText: PermissionFunctionWithDialog<(text: string) => Promise>; }; //#endregion //#region src/apis/domains/clipboard/getText/getText.d.ts /** * 클립보드에 저장된 텍스트를 가져와요. 텍스트가 없으면 빈 문자열을 반환해요. * 권한이 없으면 `GetClipboardTextPermissionError`가 발생해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Clipboard.getText`를 사용해주세요. */ declare const getClipboardText: PermissionFunctionWithDialog<() => Promise>; //#endregion //#region src/apis/domains/clipboard/setText/setText.d.ts /** * 텍스트를 클립보드에 복사해요. * 권한이 없으면 `SetClipboardTextPermissionError`가 발생해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Clipboard.setText`를 사용해주세요. */ declare const setClipboardText: PermissionFunctionWithDialog<(text: string) => Promise>; //#endregion //#region src/apis/domains/device/getPhotos/getPhotos.d.ts type FetchAlbumPhotosOptions = FetchAlbumPhotosParams; /** * 앨범에서 사진 목록을 불러와요. * 기본값은 `maxCount=10`, `maxWidth=1024`, `base64=false`예요. 권한이 없으면 `FetchAlbumPhotosPermissionError`가 발생해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.getPhotos`를 사용해주세요. */ declare const fetchAlbumPhotos: PermissionFunctionWithDialog<(options?: FetchAlbumPhotosOptions) => Promise>; //#endregion //#region src/apis/domains/device/getContacts/getContacts.d.ts type FetchContactsOptions = FetchContactsParams; type ContactResult = FetchContactsResult; /** * 연락처 목록을 페이지 단위로 가져와요. `offset`은 첫 호출에 `0`, 이후 `nextOffset`을 사용해요. * 권한이 없으면 `FetchContactsPermissionError`가 발생해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.getContacts`를 사용해주세요. */ declare const fetchContacts: PermissionFunctionWithDialog<(options: FetchContactsOptions) => Promise>; //#endregion //#region src/apis/domains/device/getLocation/getLocation.d.ts declare enum Accuracy { Lowest = 1, Low = 2, Balanced = 3, High = 4, Highest = 5, BestForNavigation = 6 } interface GetCurrentLocationOptions { accuracy: Accuracy; } /** * 디바이스의 현재 위치를 한 번 조회해요. 지속 감지가 필요하면 `startUpdateLocation`(`Device.subscribeLocation`)을 사용하세요. * 권한이 없으면 `GetCurrentLocationPermissionError`가 발생해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.getLocation`을 사용해주세요. */ declare const getCurrentLocation: PermissionFunctionWithDialog<(options: GetCurrentLocationOptions) => Promise>; //#endregion //#region src/apis/domains/device/openCamera/openCamera.d.ts type OpenCameraOptions = OpenCameraParams; /** * 카메라를 실행해 촬영한 이미지를 `{ id, dataUri }`로 반환해요. * 기본값은 `base64=false`, `maxWidth=1024`예요. 권한이 없으면 `OpenCameraPermissionError`가 발생해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.openCamera`를 사용해주세요. */ declare const openCamera: PermissionFunctionWithDialog<(options?: OpenCameraOptions) => Promise>; //#endregion //#region src/apis/domains/device/getAlbumItems/getAlbumItems.d.ts /** * 앨범에서 사진·동영상을 선택해 가져와요. 취소하면 빈 배열을 반환하고, `types`를 안 넘기면 사진만 선택돼요. * `isSupported()`로 지원 여부를 확인할 수 있어요. * @since Toss - Android 5.261.0, iOS 5.261.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.getAlbumItems`를 사용해주세요. */ declare const fetchAlbumItems: ((options?: FetchAlbumItemsOptions) => Promise) & { isSupported: () => boolean; }; //#endregion //#region src/apis/domains/device/triggerHaptic/triggerHaptic.d.ts /** * 웹 SDK가 노출하는 햅틱 타입이에요. 와이어(계약)는 string으로 열려 있어 * 새 타입이 추가돼도 하위호환이 깨지지 않아요. */ type HapticFeedbackType = "tickWeak" | "tap" | "tickMedium" | "softMedium" | "basicWeak" | "basicMedium" | "success" | "error" | "wiggle" | "confetti"; interface HapticFeedbackOptions { type: HapticFeedbackType; } /** * 디바이스에 햅틱 진동을 일으켜요. `type`이 필수예요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.triggerHaptic`을 사용해주세요. */ declare const generateHapticFeedback: (options: HapticFeedbackOptions) => Promise; //#endregion //#region src/apis/domains/device/subscribeLocation/subscribeLocation.d.ts interface StartUpdateLocationOptions { accuracy: Accuracy; timeInterval: number; distanceInterval: number; } type StartUpdateLocationEventParams = { onEvent: (response: Location) => void; onError: (error: unknown) => void; options: StartUpdateLocationOptions; }; /** * 위치 변경을 계속 감지하고 콜백을 실행해요. 반환되는 cleanup 함수로 구독을 해제해야 해요. * `timeInterval`은 시스템 영향으로 지정값보다 길어질 수 있어요. * 권한이 없으면 `onError`에 `StartUpdateLocationPermissionError`가 전달돼요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.subscribeLocation`을 사용해주세요. */ declare const startUpdateLocation: ((eventParams: StartUpdateLocationEventParams) => (() => void)) & { getPermission: () => Promise; openPermissionDialog: () => Promise; }; //#endregion //#region src/apis/domains/device/device.d.ts declare const Device: { /** * 사용자 로케일 정보예요. 값을 못 가져오면 기본값은 `ko-KR`이에요. */ readonly locale: string; /** * 현재 플랫폼(`ios`/`android`) 정보예요. */ readonly os: "ios" | "android"; /** * 앨범에서 사진 목록을 불러와요. * 기본값은 `maxCount=10`, `maxWidth=1024`, `base64=false`예요. 권한이 없으면 `FetchAlbumPhotosPermissionError`가 발생해요. */ getPhotos: PermissionFunctionWithDialog<(options?: FetchAlbumPhotosOptions) => Promise>; /** * 연락처 목록을 페이지 단위로 가져와요. `offset`은 첫 호출에 `0`, 이후 `nextOffset`을 사용해요. * 권한이 없으면 `FetchContactsPermissionError`가 발생해요. */ getContacts: PermissionFunctionWithDialog<(options: FetchContactsOptions) => Promise>; /** * 디바이스의 현재 위치를 한 번 조회해요. 지속 감지가 필요하면 `subscribeLocation`을 사용하세요. * 권한이 없으면 `GetCurrentLocationPermissionError`가 발생해요. */ getLocation: PermissionFunctionWithDialog<(options: GetCurrentLocationOptions) => Promise>; /** * 카메라를 실행해 촬영한 이미지를 `{ id, dataUri }`로 반환해요. * 기본값은 `base64=false`, `maxWidth=1024`예요. 권한이 없으면 `OpenCameraPermissionError`가 발생해요. */ openCamera: PermissionFunctionWithDialog<(options?: OpenCameraOptions) => Promise>; /** * 앨범에서 사진·동영상을 선택해 가져와요. 취소하면 빈 배열을 반환하고, `types`를 안 넘기면 사진만 선택돼요. * @since Toss - Android 5.261.0, iOS 5.261.0 */ getAlbumItems: ((options?: FetchAlbumItemsOptions) => Promise) & { isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 디바이스에 햅틱 진동을 일으켜요. `type`이 필수예요. */ triggerHaptic: (options: HapticFeedbackOptions) => Promise; /** * 위치 변경을 계속 감지하고 콜백을 실행해요. 반환되는 cleanup 함수로 구독을 해제해야 해요. * `timeInterval`은 시스템 영향으로 지정값보다 길어질 수 있어요. * 권한이 없으면 `StartUpdateLocationPermissionError`가 발생해요. */ subscribeLocation: ((eventParams: StartUpdateLocationEventParams) => (() => void)) & { getPermission: () => Promise; openPermissionDialog: () => Promise; }; /** * 지정한 URL을 기기의 기본 브라우저나 관련 앱에서 열어요. */ openURL: (url: string) => Promise; }; //#endregion //#region src/apis/domains/device/locale/locale.d.ts /** * 사용자 로케일 정보를 가져와요. 값을 못 가져오면 기본값은 `ko-KR`이에요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.locale`을 사용해주세요. */ declare function getLocale(): string; //#endregion //#region src/apis/domains/device/openURL/openURL.d.ts /** * 지정한 URL을 기기의 기본 브라우저나 관련 앱에서 열어요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.openURL`을 사용해주세요. */ declare const openURL: (url: string) => Promise; //#endregion //#region src/apis/domains/device/os/os.d.ts /** * 현재 플랫폼(`ios`/`android`) 정보를 가져와요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Device.os`를 사용해주세요. */ declare function getPlatformOS(): "ios" | "android"; //#endregion //#region src/apis/domains/environment/getNetworkStatus/getNetworkStatus.d.ts /** * 웹 SDK가 노출하는 네트워크 상태 값이에요. 와이어(계약)는 string으로 열려 있어요. */ type NetworkStatus = "OFFLINE" | "WIFI" | "2G" | "3G" | "4G" | "5G" | "WWAN" | "UNKNOWN"; /** * 디바이스의 현재 네트워크 연결 상태를 가져와요. * `OFFLINE` | `WIFI` | `2G`–`5G` | `WWAN`(iOS) | `UNKNOWN`(Android) 중 하나예요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.getNetworkStatus`를 사용해주세요. */ declare const getNetworkStatus: () => Promise; //#endregion //#region src/apis/domains/environment/environment.d.ts declare const Environment: { /** * 기기 고유 식별자예요. */ readonly deviceId: string; /** * 앱인토스 그룹 ID예요. */ readonly groupId: string; /** * 운영 환경(`toss`/`sandbox`) 정보예요. */ readonly environment: "toss" | "sandbox"; /** * 토스 앱 버전 정보예요. */ readonly tossAppVersion: string; /** * 현재 배포 ID예요. 개발 환경에서는 `'local'`이에요. */ readonly deploymentId: string; /** * 앱에 처음 진입할 때 사용한 스킴 URL이에요. 이후 페이지 이동은 반영되지 않아요. */ readonly initialURL: string; /** * 디바이스의 현재 네트워크 연결 상태를 가져와요. * `OFFLINE` | `WIFI` | `2G`–`5G` | `WWAN`(iOS) | `UNKNOWN`(Android) 중 하나예요. */ getNetworkStatus: () => Promise; /** * 토스 앱 서버의 현재 시간을 Unix timestamp(ms)로 가져와요. 디바이스 시계가 아니에요. * @since Toss - Android 5.245.0, iOS 5.245.0 */ getServerTime: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.245.0"; readonly ios: "5.245.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/environment/getAppsInTossGlobals/getAppsInTossGlobals.d.ts /** * 앱인토스 전역 값을 가져와요. 배포 ID와 브랜드 정보를 담고 있어요. */ declare function getAppsInTossGlobals(): AppsInTossGlobals; //#endregion //#region src/apis/domains/environment/deploymentId/deploymentId.d.ts /** * 배포 정보 함수형 API 묶음이에요. */ declare const env: { /** * 현재 배포 ID를 가져와요. 개발 환경에서는 `'local'`이에요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.deploymentId`를 사용해주세요. */ getDeploymentId: () => string; }; //#endregion //#region src/apis/domains/environment/deviceId/deviceId.d.ts /** * 기기 고유 식별자를 가져와요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.deviceId`를 사용해주세요. */ declare function getDeviceId(): string; //#endregion //#region src/apis/domains/environment/environment/environment.d.ts /** * 운영 환경(`toss`/`sandbox`) 정보를 가져와요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.environment`를 사용해주세요. */ declare function getOperationalEnvironment(): "toss" | "sandbox"; //#endregion //#region src/apis/domains/environment/getServerTime/getServerTime.d.ts declare const MIN_TOSS_APP_VERSION$12: { readonly android: "5.245.0"; readonly ios: "5.245.0"; }; /** * 토스 앱 서버의 현재 시간을 Unix timestamp(ms)로 가져와요. 디바이스 시계가 아니에요. * `isSupported()`로 지원 여부를 확인할 수 있어요. * @since Toss - Android 5.245.0, iOS 5.245.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.getServerTime`을 사용해주세요. */ declare const getServerTime: (() => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$12; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/environment/groupId/groupId.d.ts /** * 앱인토스 그룹 ID를 가져와요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.groupId`를 사용해주세요. */ declare function getGroupId(): string; //#endregion //#region src/apis/domains/environment/initialURL/initialURL.d.ts /** * 앱에 처음 진입할 때 사용한 스킴 URL을 가져와요. 이후 페이지 이동은 반영되지 않아요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.initialURL`을 사용해주세요. */ declare function getSchemeUri(): string; //#endregion //#region src/apis/domains/environment/isMinVersionSupported/isMinVersionSupported.d.ts /** * 현재 토스 앱 버전이 플랫폼별 최소 지원 버전 이상인지 확인해요. * * - 샌드박스 환경에서는 버전과 무관하게 항상 `true`를 반환해요. * - 현재 플랫폼의 최소 버전이 지정되지 않았으면 `false`를 반환해요. * - `'always'`는 항상 지원, `'never'`는 항상 미지원으로 처리해요. */ declare function isMinVersionSupported(minVersions: { android: `${number}.${number}.${number}` | "always" | "never"; ios: `${number}.${number}.${number}` | "always" | "never"; }): boolean; //#endregion //#region src/apis/domains/environment/tossAppVersion/tossAppVersion.d.ts /** * 토스 앱 버전 정보를 가져와요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Environment.tossAppVersion`을 사용해주세요. */ declare function getTossAppVersion(): string; //#endregion //#region src/apis/domains/file/saveBase64/saveBase64.d.ts declare const MIN_TOSS_APP_VERSION$11: { readonly android: "5.218.0"; readonly ios: "5.216.0"; }; /** * Base64로 인코딩된 데이터를 지정한 파일 이름과 MIME 타입으로 기기에 저장해요. * `fileName`에는 확장자를 포함해야 해요. * 앱 버전이 최소 지원 버전보다 낮으면 경고 로그만 남기고 아무 동작도 하지 않아요. * @since Toss - Android 5.218.0, iOS 5.216.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `File.saveBase64`를 사용해주세요. */ declare const saveBase64Data: ((params: SaveBase64DataParams) => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$11; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/file/openPDFViewer/openPDFViewer.d.ts /** * Base64로 인코딩된 PDF 데이터를 네이티브 PDF 뷰어로 열어요. 뷰어를 닫으면 `'CLOSE'`를 반환해요. * `openPDFViewer.isSupported()`로 지원 여부를 확인할 수 있어요. * @since Toss - Android 5.261.0, iOS 5.261.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `File.openPDFViewer`를 사용해주세요. */ declare const openPDFViewer: ((params: OpenPDFViewerParams) => Promise<"CLOSE">) & { MIN_TOSS_APP_VERSION: { readonly android: "5.261.0"; readonly ios: "5.261.0"; }; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/file/file.d.ts declare const File: { /** * Base64로 인코딩된 데이터를 지정한 파일 이름과 MIME 타입으로 기기에 저장해요. * `fileName`에는 확장자를 포함해야 해요. * @since Toss - Android 5.218.0, iOS 5.216.0 */ saveBase64: ((params: SaveBase64DataParams) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.218.0"; readonly ios: "5.216.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * Base64로 인코딩된 PDF 데이터를 네이티브 PDF 뷰어로 열어요. 뷰어를 닫으면 `'CLOSE'`를 반환해요. * @since Toss - Android 5.261.0, iOS 5.261.0 */ openPDFViewer: ((params: OpenPDFViewerParams) => Promise<"CLOSE">) & { MIN_TOSS_APP_VERSION: { readonly android: "5.261.0"; readonly ios: "5.261.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/game/setLeaderboardScore/setLeaderboardScore.d.ts declare const MIN_TOSS_APP_VERSION$10: { readonly android: "5.221.0"; readonly ios: "5.221.0"; }; /** * 사용자의 게임 점수를 토스게임센터 리더보드에 제출해요. * `score`는 실수형 숫자의 문자열이어야 해요. 예: `"123.45"` * 앱 버전이 최소 지원 버전보다 낮으면 아무 동작도 하지 않고 `undefined`를 반환해요. * @since Toss - Android 5.221.0, iOS 5.221.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Game.setLeaderboardScore`를 사용해주세요. */ declare const submitGameCenterLeaderBoardScore: ((params: { score: string; }) => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$10; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/game/getUserProfile/getUserProfile.d.ts declare const MIN_TOSS_APP_VERSION$9: { readonly android: "5.221.0"; readonly ios: "5.221.0"; }; /** * 토스게임센터 프로필 정보를 가져와요. * 프로필이 없으면 `statusCode: 'PROFILE_NOT_FOUND'`를 반환해요. * 앱 버전이 최소 지원 버전보다 낮으면 아무 동작도 하지 않고 `undefined`를 반환해요. * @since Toss - Android 5.221.0, iOS 5.221.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Game.getUserProfile`을 사용해주세요. */ declare const getGameCenterGameProfile: (() => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$9; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/game/subscribeInfoOverlayHidden/subscribeInfoOverlayHidden.d.ts type SubscribeInfoOverlayHiddenEventParams = { onEvent: () => void; onError: (error: unknown) => void; }; //#endregion //#region src/apis/domains/game/game.d.ts declare const Game: { /** * 게임센터 리더보드 웹뷰를 열어요. * @since Toss - Android 5.221.0, iOS 5.221.0 */ openLeaderboard: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.221.0"; readonly ios: "5.221.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 사용자의 게임 점수를 토스게임센터 리더보드에 제출해요. * `score`는 실수형 숫자의 문자열이어야 해요. 예: `"123.45"` * @since Toss - Android 5.221.0, iOS 5.221.0 */ setLeaderboardScore: ((params: { score: string; }) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.221.0"; readonly ios: "5.221.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 토스게임센터 프로필 정보를 가져와요. * 프로필이 없으면 `statusCode: 'PROFILE_NOT_FOUND'`를 반환해요. * @since Toss - Android 5.221.0, iOS 5.221.0 */ getUserProfile: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.221.0"; readonly ios: "5.221.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 게임 정보 오버레이가 완전히 사라진 시점을 구독해요. * 반환되는 구독 해제 함수는 더 이상 이벤트가 필요하지 않을 때 호출하세요. */ subscribeInfoOverlayHidden: (eventParams: SubscribeInfoOverlayHiddenEventParams) => () => void; }; //#endregion //#region src/apis/domains/game/openLeaderboard/openLeaderboard.d.ts declare const MIN_TOSS_APP_VERSION$8: { readonly android: "5.221.0"; readonly ios: "5.221.0"; }; /** * 게임센터 리더보드 웹뷰를 열어요. * 앱 버전이 최소 지원 버전보다 낮으면 아무 동작도 하지 않고 `undefined`를 반환해요. * @since Toss - Android 5.221.0, iOS 5.221.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Game.openLeaderboard`를 사용해주세요. */ declare const openGameCenterLeaderboard: (() => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$8; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/iap/createOneTimePurchaseOrder/createOneTimePurchaseOrder.d.ts type Sku = { /** @deprecated `productId`는 더 이상 사용하지 않아요. 대신 `sku`를 사용해요. */ productId: string; sku?: string; } | { productId?: never; sku: string; }; interface IapCreateOneTimePurchaseOrderOptions { options: Sku & { processProductGrant: (params: { orderId: string; }) => boolean | Promise; }; onEvent: (event: { type: "success"; data: IapCreateOneTimePurchaseOrderResult; }) => void | Promise; onError: (error: unknown) => void | Promise; } //#endregion //#region src/apis/domains/iap/createSubscriptionPurchaseOrder/createSubscriptionPurchaseOrder.d.ts type IapCreateSubscriptionPurchaseOrderResult = IapCreateOneTimePurchaseOrderResult; interface CreateSubscriptionPurchaseOrderOptions { options: { sku: string; offerId?: string | null; processProductGrant: (params: { orderId: string; subscriptionId?: string; }) => boolean | Promise; }; onEvent: (event: { type: "success"; data: IapCreateSubscriptionPurchaseOrderResult; }) => void | Promise; onError: (error: unknown) => void | Promise; } //#endregion //#region src/apis/domains/iap/getSubscriptionInfo/getSubscriptionInfo.d.ts /** * 비교를 허용하도록 넓혀요. `(string & {})` 덕분에 자동완성은 유지돼요. */ interface IapSubscriptionInfoResult extends Omit { status: IapSubscriptionInfoResult$1["status"] | (string & {}); } interface IapSubscriptionInfoResponse { subscription: IapSubscriptionInfoResult; } //#endregion //#region src/apis/domains/iap/iap.d.ts declare const IAP: { /** * 단건 인앱결제 주문서 페이지로 이동해요. * 반환되는 cleanup 함수는 결제 흐름이 끝나면 반드시 호출해야 해요. * 상품 식별자는 `sku`를 사용하세요. (`productId`는 deprecated) * @since Toss - Android 5.219.0, iOS 5.219.0 */ createOneTimePurchaseOrder: ((params: IapCreateOneTimePurchaseOrderOptions) => (() => void)) & { MIN_TOSS_APP_VERSION: { readonly android: "5.219.0"; readonly ios: "5.219.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 구독 인앱결제 주문서 페이지로 이동해요. * 반환되는 cleanup 함수는 결제 흐름이 끝나면 반드시 호출해야 해요. * @since Toss - Android 5.248.0, iOS 5.249.0 */ createSubscriptionPurchaseOrder: ((params: CreateSubscriptionPurchaseOrderOptions) => (() => void)) & { MIN_TOSS_APP_VERSION: { readonly android: "5.248.0"; readonly ios: "5.249.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 구매 가능한 상품 목록을 가져와요. * @since Toss - Android 5.219.0, iOS 5.219.0 */ getProductItemList: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.219.0"; readonly ios: "5.219.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 결제는 완료됐지만 상품이 아직 지급되지 않은 주문 목록을 가져와요. * @since Toss - Android 5.234.0, iOS 5.231.0 */ getPendingOrders: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.234.0"; readonly ios: "5.231.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 완료·환불된 주문 목록을 가져와요. `hasNext` / `nextKey`로 페이지네이션해요. * @since Toss - Android 5.231.0, iOS 5.231.0 */ getCompletedOrRefundedOrders: ((params?: GetCompletedOrRefundedOrdersParams) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.231.0"; readonly ios: "5.231.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 상품 지급 완료를 앱에 알려요. `{ params: { orderId } }` 형태이며, 지급 완료 여부(boolean)를 반환해요. * @since Toss - Android 5.233.0, iOS 5.233.0 */ completeProductGrant: ((args: { params: { orderId: string; }; }) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.233.0"; readonly ios: "5.233.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 구독 주문의 현재 상태 정보를 가져와요. `{ params: { orderId } }` 형태예요. * @since Toss - Android 5.253.0, iOS 5.250.0 */ getSubscriptionInfo: ((args: { params: { orderId: string; }; }) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.253.0"; readonly ios: "5.250.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/migration/originStorageDump.d.ts interface OriginStorageDump { origin: string; localStorage: Record; indexedDB: Array<{ name: string; version: number; objectStores: Array<{ name: string; keyPath: string | string[] | null; autoIncrement: boolean; indexes: Array<{ name: string; keyPath: string | string[]; multiEntry: boolean; unique: boolean; }>; records: Array<{ key: IDBValidKey; primaryKey: IDBValidKey; value: unknown; }>; }>; }>; opfs: { directories: string[]; files: Array<{ path: string; type: string; lastModified: number; data: ArrayBuffer; }>; }; errors: Array<{ storage: "localStorage" | "indexedDB" | "opfs"; message: string; }>; } //#endregion //#region src/apis/domains/migration/getOriginStorage/getOriginStorage.d.ts declare function getOriginStorage(): Promise<{ previous: OriginStorageDump; current: OriginStorageDump; }>; //#endregion //#region src/apis/domains/migration/migration.d.ts declare const Migration: { getOriginStorage: typeof getOriginStorage; }; //#endregion //#region src/apis/domains/navigation-bar/setOptions/setOptions.d.ts type NavigationBarTheme = "light" | "dark"; interface SetNavigationBarOptions { withBackButton?: boolean; withHomeButton?: boolean; withTitle?: boolean; transparentBackground?: boolean; backgroundColor?: string | null; theme?: NavigationBarTheme; } //#endregion //#region src/apis/domains/navigation-bar/navigation-bar.d.ts declare const NavigationBar: { /** * 네비게이션 바 버튼·타이틀·투명·배경색·테마를 바꿔요. * 넘긴 필드만 반영하고, 생략한 필드는 직전에 적용된 값을 유지해요. */ setOptions: (options: SetNavigationBarOptions) => Promise; }; //#endregion //#region src/apis/domains/notification/requestAgreement/requestAgreement.d.ts interface RequestNotificationAgreementOptions { options: RequestNotificationAgreementParams; onEvent: (result: { type: NotificationAgreementResult; }) => void; onError: (error: unknown) => void | Promise; } declare const MIN_TOSS_APP_VERSION$7: { readonly android: "5.255.0"; readonly ios: "5.255.0"; }; /** * 알림 동의 화면을 요청하고, 동의 결과를 콜백으로 전달해요. * `templateCode`는 콘솔 스마트발송 템플릿 코드예요. 반환되는 cleanup 함수로 콜백을 해제해야 해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Notification.requestAgreement`를 사용해주세요. * @since Toss - Android 5.255.0, iOS 5.255.0 */ declare const requestNotificationAgreement: ((params: RequestNotificationAgreementOptions) => () => void) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$7; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/notification/notification.d.ts declare const Notification: { /** * 알림 동의 화면을 요청하고, 동의 결과를 콜백으로 전달해요. * `templateCode`는 콘솔 스마트발송 템플릿 코드예요. 반환되는 cleanup 함수로 콜백을 해제해야 해요. * @since Toss - Android 5.255.0, iOS 5.255.0 */ requestAgreement: ((params: RequestNotificationAgreementOptions) => () => void) & { MIN_TOSS_APP_VERSION: { readonly android: "5.255.0"; readonly ios: "5.255.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/permissions/getPermission/getPermission.d.ts declare function getPermission(permission: { name: PermissionName; access: PermissionAccess; }): Promise; //#endregion //#region src/apis/domains/permissions/openPermissionDialog/openPermissionDialog.d.ts declare function openPermissionDialog(permission: { name: PermissionName; access: PermissionAccess; }): Promise; //#endregion //#region src/apis/domains/permissions/requestPermission/requestPermission.d.ts declare function requestPermission(permission: { name: PermissionName; access: PermissionAccess; }): Promise<"denied" | "allowed">; //#endregion //#region src/apis/domains/permissions/PermissionError.d.ts type PermissionFunctionName = "getClipboardText" | "setClipboardText" | "fetchContacts" | "fetchAlbumPhotos" | "getCurrentLocation" | "openCamera"; interface PermissionErrorConstructorParams { methodName: PermissionFunctionName; message: string; } /** * 권한 에러를 나타내는 클래스예요. 공통된 권한에러를 처리할 때 사용해요. * 에러가 발생했을 때 `error instanceof PermissionError`를 통해 확인할 수 있어요. */ declare class PermissionError extends Error { constructor({ methodName, message }: PermissionErrorConstructorParams); } //#endregion //#region src/apis/domains/permissions/FetchAlbumPhotosPermissionError.d.ts /** * 사진첩 권한이 거부되었을 때 발생하는 에러예요. * 에러가 발생했을 때 `error instanceof FetchAlbumPhotosPermissionError`를 통해 확인할 수 있어요. */ declare class FetchAlbumPhotosPermissionError extends PermissionError { constructor(); } //#endregion //#region src/apis/domains/permissions/FetchContactsPermissionError.d.ts /** * 연락처 권한이 거부되었을 때 발생하는 에러예요. * 에러가 발생했을 때 `error instanceof FetchContactsPermissionError`를 통해 확인할 수 있어요. */ declare class FetchContactsPermissionError extends PermissionError { constructor(); } //#endregion //#region src/apis/domains/permissions/GetClipboardTextPermissionError.d.ts /** * 클립보드 읽기 권한이 거부되었을 때 발생하는 에러예요. * 에러가 발생했을 때 `error instanceof GetClipboardTextPermissionError`를 통해 확인할 수 있어요. */ declare class GetClipboardTextPermissionError extends PermissionError { constructor(); } //#endregion //#region src/apis/domains/permissions/GetCurrentLocationPermissionError.d.ts /** * 위치 권한이 거부되었을 때 발생하는 에러예요. * 에러가 발생했을 때 `error instanceof GetCurrentLocationPermissionError`를 통해 확인할 수 있어요. */ declare class GetCurrentLocationPermissionError extends PermissionError { constructor(); } //#endregion //#region src/apis/domains/permissions/OpenCameraPermissionError.d.ts /** * 카메라 권한이 거부되었을 때 발생하는 에러예요. * 에러가 발생했을 때 `error instanceof OpenCameraPermissionError`를 통해 확인할 수 있어요. */ declare class OpenCameraPermissionError extends PermissionError { constructor(); } //#endregion //#region src/apis/domains/permissions/SetClipboardTextPermissionError.d.ts /** * 클립보드 쓰기 권한이 거부되었을 때 발생하는 에러예요. * 에러가 발생했을 때 `error instanceof SetClipboardTextPermissionError`를 통해 확인할 수 있어요. */ declare class SetClipboardTextPermissionError extends PermissionError { constructor(); } //#endregion //#region src/apis/domains/permissions/StartUpdateLocationPermissionError.d.ts /** * 위치 업데이트 권한이 거부되었을 때 발생하는 에러예요. * `GetCurrentLocationPermissionError`와 동일하며, * `error instanceof StartUpdateLocationPermissionError`로 확인할 수 있어요. */ declare const StartUpdateLocationPermissionError: typeof GetCurrentLocationPermissionError; //#endregion //#region src/apis/domains/permissions/withPermission.d.ts interface PermissionErrorType extends Error { name: string; message: string; } type PermissionDialogFunction = () => Promise>; type GetPermissionFunction = () => Promise; type PermissionFunctionWithDialog any> = T & { getPermission: GetPermissionFunction; openPermissionDialog: PermissionDialogFunction; }; type CompatiblePlaceholderArgument = object; type RequestPermissionFunction = (permission: { name: PermissionName; access: PermissionAccess; }) => Promise>; type InternalPermissionDialogFunction = (permission: { name: PermissionName; access: PermissionAccess; }) => Promise>; type InternalGetPermissionFunction = (permission: { name: PermissionName; access: PermissionAccess; }) => Promise; interface CreatePermissionFunctionOptions any> { handler: T; permission: { name: PermissionName; access: PermissionAccess; }; error: new () => PermissionErrorType; } //#endregion //#region src/apis/domains/promotion/grantReward/grantReward.d.ts type GrantPromotionRewardErrorResult$1 = { errorCode: string; message: string; }; type GrantPromotionRewardResult$1 = GrantPromotionRewardResponse | GrantPromotionRewardErrorResult$1 | "ERROR" | undefined; declare function isSupported$2(): boolean; /** * 프로모션 코드를 사용해 유저에게 리워드를 지급해요. * 성공 시 `{ key }`, 실패 시 `{ errorCode, message }` 또는 `'ERROR'`를 반환하고, * 미지원 앱 버전이면 `undefined`를 반환해요. 실패는 reject 대신 반환값으로 흡수해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Promotion.grantReward`를 사용해주세요. * @since Toss - Android 5.232.0, iOS 5.232.0 */ declare const grantPromotionReward: ((params: GrantPromotionRewardParams) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.232.0"; readonly ios: "5.232.0"; }; isSupported: typeof isSupported$2; }; //#endregion //#region src/apis/domains/promotion/_openContactsInvite/openContactsInvite.d.ts type RewardFromContactsViralEvent = ContactsViralRewardEvent; type ContactsViralSuccessEvent = ContactsViralCloseEvent; interface ContactsViralParams$1 { options: ContactsViralParams; onEvent: (event: ContactsViralEvent) => void; onError: (error: unknown) => void; } declare function isSupported$1(): boolean; /** * 친구에게 공유하고 리워드를 받을 수 있는 기능을 제공해요. * `options.moduleId`는 콘솔 공유 리워드 UUID예요. 반환되는 cleanup 함수로 구독을 해제해야 해요. * 미지원 앱 버전이면 아무 동작 없이 빈 cleanup 함수를 반환해요. * * @deprecated 이 API는 더 이상 사용을 권장하지 않아요. * @since Toss - Android 5.223.0, iOS 5.223.0 */ declare const contactsViral: ((params: ContactsViralParams$1) => (() => void)) & { MIN_TOSS_APP_VERSION: { readonly android: "5.223.0"; readonly ios: "5.223.0"; }; isSupported: typeof isSupported$1; }; //#endregion //#region src/apis/domains/promotion/promotion.d.ts type GrantRewardParams = { promotionCode: string; amount: number; }; type GrantRewardResult = GrantPromotionRewardResponse; declare const Promotion: { /** * 프로모션 코드를 사용해 유저에게 리워드를 지급해요. 성공 시 `{ key }`를 반환해요. * 지급 실패면 실패 코드(`error.code`)를 담은 에러를, 알 수 없는 오류면 `UNKNOWN_ERROR`를 throw해요. * @since Toss - Android 5.232.0, iOS 5.232.0 */ grantReward: ((params: GrantRewardParams) => Promise) & { isSupported: () => boolean; MIN_TOSS_APP_VERSION: { readonly android: "5.232.0"; readonly ios: "5.232.0"; }; } & { isSupported: () => boolean; }; /** * 친구에게 공유하고 리워드를 받을 수 있는 기능을 제공해요. * `options.moduleId`는 콘솔 공유 리워드 UUID예요. 반환되는 cleanup 함수로 구독을 해제해야 해요. * @deprecated 이 API는 더 이상 사용을 권장하지 않아요. * @since Toss - Android 5.223.0, iOS 5.223.0 */ openContactsInvite: ((params: ContactsViralParams$1) => (() => void)) & { MIN_TOSS_APP_VERSION: { readonly android: "5.223.0"; readonly ios: "5.223.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/review/review.d.ts declare const Review: { /** * 유저에게 미니앱 리뷰를 요청해요. * @since Toss - Android 5.253.0, iOS 5.253.0 */ request: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.253.0"; readonly ios: "5.253.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/review/request/request.d.ts declare const MIN_TOSS_APP_VERSION$6: { readonly android: "5.253.0"; readonly ios: "5.253.0"; }; /** * 유저에게 미니앱 리뷰를 요청해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Review.request`를 사용해주세요. * @since Toss - Android 5.253.0, iOS 5.253.0 */ declare const requestReview: (() => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$6; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/safe-area/getSafeAreaInsets/getSafeAreaInsets.d.ts /** * Safe Area insets 값을 가져와요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `SafeArea.get`을 사용해주세요. */ declare function getSafeAreaInsets(): SafeAreaInsets$2; //#endregion //#region src/apis/domains/safe-area/safe-area.d.ts declare const SafeArea: { /** * 현재 Safe Area insets(top/bottom/left/right)를 동기로 반환해요. */ get: () => SafeAreaInsets$2; /** * Safe Area insets 변경을 구독해요. insets가 바뀔 때만 이벤트가 발생해요. * 반환되는 구독 해제 함수는 언마운트 시 호출하세요. */ subscribe: (args: { onEvent: (data: SafeAreaInsets$2) => void; }) => () => void; }; //#endregion //#region src/apis/domains/safe-area/index.d.ts /** * `SafeArea`의 v2 호환 별칭이에요. 같은 인스턴스라서 * `SafeAreaInsets.get()`과 `SafeAreaInsets.subscribe()`를 그대로 쓸 수 있어요. */ declare const SafeAreaInsets: { get: () => SafeAreaInsets$2; subscribe: (args: { onEvent: (data: SafeAreaInsets$2) => void; }) => () => void; }; type SafeAreaInsets = SafeAreaInsets$2; //#endregion //#region src/apis/domains/screen/setAwakeMode/setAwakeMode.d.ts interface SetScreenAwakeModeOptions { enabled: boolean; } /** * 화면이 항상 켜져 있도록 설정하거나 해제해요. 앱 전체에 영향을 주므로 화면을 벗어날 때 이전 상태로 복구하세요. * 앱을 벗어나면 항상 켜짐 모드가 풀릴 수 있어요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Screen.setAwakeMode`를 사용해주세요. */ declare const setScreenAwakeMode: (options: SetScreenAwakeModeOptions) => Promise<{ enabled: boolean; }>; //#endregion //#region src/apis/domains/screen/setSecure/setSecure.d.ts interface SetSecureScreenOptions { enabled: boolean; } /** * 화면 캡쳐를 차단하거나 허용해요. `{ enabled: true }`면 차단, `false`면 허용이에요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Screen.setSecure`를 사용해주세요. */ declare const setSecureScreen: (options: SetSecureScreenOptions) => Promise<{ enabled: boolean; }>; //#endregion //#region src/apis/domains/screen/setIosSwipeBack/setIosSwipeBack.d.ts interface SetIosSwipeGestureEnabledOptions { isEnabled: boolean; } /** * iOS에서 화면을 스와이프해 뒤로가기하는 기능을 켜거나 꺼요. 옵션 키는 `isEnabled`예요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Screen.setIosSwipeBack`을 사용해주세요. */ declare const setIosSwipeGestureEnabled: (options: SetIosSwipeGestureEnabledOptions) => Promise; //#endregion //#region src/apis/domains/screen/setOrientation/setOrientation.d.ts interface SetDeviceOrientationOptions { type: DeviceOrientation; } declare const MIN_TOSS_APP_VERSION$5: { readonly android: "5.215.0"; readonly ios: "5.215.0"; }; /** * 기기 화면 방향을 `'portrait'` 또는 `'landscape'`로 설정해요. 앱 전체에 영향을 주므로 화면을 벗어날 때 복구하세요. * 앱 버전이 최소 지원 버전보다 낮으면 아무 동작도 하지 않아요. * @since Toss - Android 5.215.0, iOS 5.215.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Screen.setOrientation`을 사용해주세요. */ declare const setDeviceOrientation: ((options: SetDeviceOrientationOptions) => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$5; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/screen/screen.d.ts declare const Screen: { /** * 현재 화면을 닫아요. */ close: () => Promise; /** * 화면이 항상 켜져 있도록 설정하거나 해제해요. 앱 전체에 영향을 주므로 화면을 벗어날 때 이전 상태로 복구하세요. * 앱을 벗어나면 항상 켜짐 모드가 풀릴 수 있어요. */ setAwakeMode: (options: SetScreenAwakeModeOptions) => Promise<{ enabled: boolean; }>; /** * 화면 캡쳐를 차단하거나 허용해요. `{ enabled: true }`면 차단, `false`면 허용이에요. */ setSecure: (options: SetSecureScreenOptions) => Promise<{ enabled: boolean; }>; /** * iOS에서 화면을 스와이프해 뒤로가기하는 기능을 켜거나 꺼요. 옵션 키는 `isEnabled`예요. */ setIosSwipeBack: (options: SetIosSwipeGestureEnabledOptions) => Promise; /** * 기기 화면 방향을 `'portrait'` 또는 `'landscape'`로 설정해요. 앱 전체에 영향을 주므로 화면을 벗어날 때 복구하세요. * @since Toss - Android 5.215.0, iOS 5.215.0 */ setOrientation: ((options: SetDeviceOrientationOptions) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.215.0"; readonly ios: "5.215.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/screen/close/close.d.ts /** * 현재 화면을 닫아요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Screen.close`를 사용해주세요. */ declare const closeView: () => Promise; //#endregion //#region src/apis/domains/share/share.d.ts type CreateLinkParams = { path: string; ogImageUrl?: string; }; declare const Share: { /** * 지정한 경로를 토스 앱에서 열 수 있는 공유 링크를 만들어요. * `path`는 `intoss://`로 시작하는 딥링크여야 해요. `ogImageUrl`은 토스앱 Android `5.240.0`, iOS `5.239.0` 이상에서만 동작해요. */ createLink: ({ path, ogImageUrl }: CreateLinkParams) => Promise; /** * 네이티브 공유 시트를 열어 메시지를 공유해요. */ sendMessage: (message: { message: string; }) => Promise; }; //#endregion //#region src/apis/domains/share/createLink/createLink.d.ts /** * 지정한 경로를 토스 앱에서 열 수 있는 공유 링크를 만들어요. * `path`는 `intoss://`로 시작하는 딥링크여야 해요. `ogImageUrl`은 토스앱 Android `5.240.0`, iOS `5.239.0` 이상에서만 동작해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Share.createLink`를 사용해주세요. */ declare function getTossShareLink(path: string, ogImageUrl?: string): Promise; //#endregion //#region src/apis/domains/share/sendMessage/sendMessage.d.ts /** * 네이티브 공유 시트를 열어 메시지를 공유해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `Share.sendMessage`를 사용해주세요. */ declare const share: (message: { message: string; }) => Promise; //#endregion //#region src/apis/domains/storage/getItems/getItems.d.ts type GetItemsResult = GetStorageItemsResult; //#endregion //#region src/apis/domains/storage/storage.d.ts declare const Storage: { /** * 로컬 저장소에서 문자열 값을 가져와요. 값이 없으면 `null`을 반환해요. */ getItem: (key: string) => Promise; /** * 로컬 저장소에서 여러 문자열 값을 한 번에 가져와요. 저장되지 않은 키의 값은 `null`이에요. * @since Toss - Android 5.270.0, iOS 5.270.0 */ getItems: ((keys: string[]) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.270.0"; readonly ios: "5.270.0"; }; } & { isSupported: () => boolean; }; /** * 로컬 저장소에 문자열 값을 저장해요. 앱이 종료되어도 유지돼요. */ setItem: (key: string, value: string) => Promise; /** * 로컬 저장소에 여러 문자열 값을 한 번에 저장해요. * @since Toss - Android 5.270.0, iOS 5.270.0 */ setItems: ((items: Record) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.270.0"; readonly ios: "5.270.0"; }; } & { isSupported: () => boolean; }; /** * 특정 키의 값을 삭제해요. */ removeItem: (key: string) => Promise; /** * 로컬 저장소의 모든 값을 삭제해요. */ clearItems: () => Promise; }; //#endregion //#region src/apis/domains/toss-auth/isIntegrated/isIntegrated.d.ts declare const MIN_TOSS_APP_VERSION$4: { readonly android: "5.237.0"; readonly ios: "5.237.0"; }; /** * 유저가 토스 로그인을 연동했는지 여부를 확인해요. * 토스 로그인을 쓰지 않는 미니앱에서 호출하면 설정 오류로 throw될 수 있어요. * 앱 버전이 최소 지원 버전보다 낮으면 아무 동작도 하지 않고 `undefined`를 반환해요. * @since Toss - Android 5.237.0, iOS 5.237.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `TossAuth.isIntegrated`를 사용해주세요. */ declare const getIsTossLoginIntegratedService: (() => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$4; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/toss-auth/login/login.d.ts /** * 토스 인증으로 로그인해요. 로그인이 완료되면 다시 토스 앱으로 이동해요. * 반환된 `authorizationCode`와 `referrer`는 서버로 전달해야 해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `TossAuth.login`을 사용해주세요. */ declare const appLogin: () => Promise; //#endregion //#region src/apis/domains/toss-auth/sign/sign.d.ts declare const MIN_TOSS_APP_VERSION$3: { readonly android: "5.233.0"; readonly ios: "5.233.0"; }; /** * 토스 인증서를 사용해 서명해요. 본인확인·간편인증·전자서명의 `txId`가 필요해요. * 앱 버전이 최소 지원 버전보다 낮으면 경고 로그만 남기고 아무 동작도 하지 않아요. * @since Toss - Android 5.233.0, iOS 5.233.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `TossAuth.sign`을 사용해주세요. */ declare const appsInTossSignTossCert: ((params: AppsInTossSignTossCertParams) => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$3; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/toss-auth/toss-auth.d.ts declare const TossAuth: { /** * 토스 인증으로 로그인해요. 로그인이 완료되면 다시 토스 앱으로 이동해요. * 반환된 `authorizationCode`와 `referrer`는 서버로 전달해야 해요. */ login: () => Promise; /** * 유저가 토스 로그인을 연동했는지 여부를 확인해요. * 토스 로그인을 쓰지 않는 미니앱에서 호출하면 설정 오류로 throw될 수 있어요. * @since Toss - Android 5.237.0, iOS 5.237.0 */ isIntegrated: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.237.0"; readonly ios: "5.237.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * 토스 인증서를 사용해 서명해요. 본인확인·간편인증·전자서명의 `txId`가 필요해요. * @since Toss - Android 5.233.0, iOS 5.233.0 */ sign: ((params: AppsInTossSignTossCertParams) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.233.0"; readonly ios: "5.233.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/toss-pay/authorize/authorize.d.ts type CheckoutPaymentOptions = CheckoutPaymentParams; /** * 토스페이 결제창을 띄우고 사용자 인증을 수행해요. * 결제창을 통해 사용자 인증만 하며, 실제 결제 처리는 인증 성공 후 서버에서 별도로 해야 해요. * `payToken`이 필요하며 `{ success, reason? }`를 반환해요. * * @deprecated 이 함수는 더 이상 사용되지 않아요. `TossPay.authorize`를 사용해주세요. */ declare function checkoutPayment(options: { params: CheckoutPaymentOptions; }): Promise; //#endregion //#region src/apis/domains/toss-pay/authorizeSubscription/authorizeSubscription.d.ts type RequestTossPayPaysBillingOptions = RequestTossPayPaysBillingParams; declare function isSupported(): boolean; /** * 토스페이 정기결제창을 띄우고 사용자 인증을 수행해요. * 결제창을 통해 사용자 인증만 하며, 실제 결제 처리는 인증 성공 후 서버에서 별도로 해야 해요. * 미지원 버전이면 경고 로그 후 `undefined`를 반환해요. `isSupported()`로 지원 여부를 확인할 수 있어요. * @since Toss - Android 5.256.0, iOS 5.256.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `TossPay.authorizeSubscription`을 사용해주세요. */ declare const requestTossPayPaysBilling: ((options: { params: RequestTossPayPaysBillingOptions; }) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.256.0"; readonly ios: "5.256.0"; }; isSupported: typeof isSupported; }; //#endregion //#region src/apis/domains/toss-pay/toss-pay.d.ts declare const TossPay: { /** * 토스페이 결제창을 띄우고 사용자 인증을 수행해요. * 결제창을 통해 사용자 인증만 하며, 실제 결제 처리는 인증 성공 후 서버에서 별도로 해야 해요. * `payToken`이 필요하며 `{ success, reason? }`를 반환해요. */ authorize: (params: CheckoutPaymentOptions) => Promise; /** * 토스페이 정기결제창을 띄우고 사용자 인증을 수행해요. * 결제창을 통해 사용자 인증만 하며, 실제 결제 처리는 인증 성공 후 서버에서 별도로 해야 해요. * `wrappedToken`이 필요하며 `{ success, reason? }`를 반환해요. * @since Toss - Android 5.256.0, iOS 5.256.0 */ authorizeSubscription: ((params: RequestTossPayPaysBillingOptions) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.256.0"; readonly ios: "5.256.0"; }; } & { isSupported: () => boolean; }; /** * @deprecated TossPay.authorize를 사용해주세요 */ checkoutPayment: typeof checkoutPayment; /** * @deprecated TossPay.authorizeSubscription을 사용해주세요 */ requestTossPayPaysBilling: ((options: { params: RequestTossPayPaysBillingOptions; }) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.256.0"; readonly ios: "5.256.0"; }; isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/user/getAnonymousKey/getAnonymousKey.d.ts declare const MIN_TOSS_APP_VERSION$2: { readonly android: "5.232.0"; readonly ios: "5.232.0"; }; /** * 미니앱에서 사용자의 고유 키를 가져와요. 성공 시 `{ type: 'HASH', hash }`를 반환해요. * 알 수 없는 오류가 발생하면 `'ERROR'`를, 앱 버전이 최소 지원 버전보다 낮으면 `undefined`를 반환해요. * @since Toss - Android 5.232.0, iOS 5.232.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `User.getAnonymousKey`을 사용해주세요. */ declare const getAnonymousKey: (() => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$2; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/user/getConsentedData/getConsentedData.d.ts type ConsentedUserDataKey = "USER_NAME" | "USER_GENDER" | "USER_NATIONALITY" | "USER_BIRTHDAY" | "USER_PHONE" | "USER_ADDRESS" | "USER_ADDRESS_BASE" | "USER_ADDRESS_DETAIL" | "USER_EMAIL" | "USER_CONSUMPTION_HISTORY"; type ConsentedUserData = Partial>; type GetConsentedUserDataErrorCode = "USER_DECLINED" | "UNAVAILABLE" | "TERMS_NOT_SET" | "INVALID_REQUEST" | "CANCELED" | "CONSENTED_USER_DATA_AGREEMENT_FAILED" | "CONSENTED_USER_DATA_INVALID_DATA"; declare const MIN_TOSS_APP_VERSION$1: { readonly android: "5.264.0"; readonly ios: "5.264.0"; }; /** * 사용자 동의 기반 데이터를 요청해요. `consentedUserDataKey`가 필요하고, 동의가 필요하면 약관 웹뷰를 띄워요. * 미지원 토스 앱 버전에서는 undefined를 반환해요. * @since Toss - Android 5.264.0, iOS 5.264.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `User.getConsentedData`을 사용해주세요. */ declare const getConsentedUserData: ((options: GetConsentedUserDataOptions) => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION$1; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/user/getDeclaredAgeRange/getDeclaredAgeRange.d.ts interface DeclaredAgeRange { status: "SHARING" | "DECLINED_SHARING" | "UNSUPPORTED_OS" | "NOT_AVAILABLE" | "INVALID_REQUEST" | "FAILED"; lowerBound?: number; upperBound?: number; ageRangeDeclaration?: string; activeParentalControls: string[]; isEligibleForAgeFeatures?: boolean; errorCode?: string; } declare const MIN_TOSS_APP_VERSION: { readonly ios: "5.266.0"; }; declare const MIN_OS_VERSION: { readonly ios: "26.0"; }; /** * iOS에서 선언된 연령 범위를 조회해요. iOS 26 이상과 토스앱 5.266.0 이상이 필요하고, `{ ageGates: number[] }`를 넘기세요. * `isSupported()`로 지원 여부를 확인할 수 있어요. * @since Toss - iOS 5.266.0, OS - iOS 26.0 * * @deprecated 이 함수는 더 이상 사용되지 않아요. `User.getDeclaredAgeRange`을 사용해주세요. */ declare const getDeclaredAgeRange: ((params: GetDeclaredAgeRangeParams) => Promise) & { MIN_TOSS_APP_VERSION: typeof MIN_TOSS_APP_VERSION; MIN_OS_VERSION: typeof MIN_OS_VERSION; isSupported: () => boolean; }; //#endregion //#region src/apis/domains/user/user.d.ts declare const User: { /** * 익명 사용자 키를 받기 위한 일회용 인증 코드를 발급해요. * 반환된 `code`를 파트너사 서버로 보내 교환하면 `hash`를 받을 수 있어요. * 코드는 일회용이며 `expiresIn`(초) 안에 써야 해요. * 교환으로 받은 `hash`는 `User.getAnonymousKey`의 `hash`와 같은 값이에요. */ createAnonymousKeyAuthCode: () => Promise; /** * 미니앱에서 사용자의 고유 키를 가져와요. 성공 시 `{ type: 'HASH', hash }`를 반환해요. * 앱 버전이 부족하면 `UNSUPPORTED_APP_VERSION`, 알 수 없는 오류면 `UNKNOWN_ERROR`를 throw해요. * @since Toss - Android 5.232.0, iOS 5.232.0 */ getAnonymousKey: (() => Promise) & { isSupported: () => boolean; MIN_TOSS_APP_VERSION: { readonly android: "5.232.0"; readonly ios: "5.232.0"; }; } & { isSupported: () => boolean; }; /** * 사용자 동의 기반 데이터를 요청해요. `consentedUserDataKey`가 필요하고, 동의가 필요하면 약관 웹뷰를 띄워요. * @since Toss - Android 5.264.0, iOS 5.264.0 */ getConsentedData: ((options: GetConsentedUserDataOptions) => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.264.0"; readonly ios: "5.264.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; /** * iOS에서 선언된 연령 범위를 조회해요. iOS 26 이상과 토스앱 5.266.0 이상이 필요하고, `{ ageGates: number[] }`를 넘기세요. * OS 버전이 부족하면 `UNSUPPORTED_OS_VERSION`, 토스앱 버전이 부족하면 `UNSUPPORTED_APP_VERSION` 에러를 던져요. * @since Toss - iOS 5.266.0, OS - iOS 26.0 */ getDeclaredAgeRange: ((params: GetDeclaredAgeRangeParams) => Promise) & { MIN_TOSS_APP_VERSION: { readonly ios: "5.266.0"; }; MIN_OS_VERSION: { readonly ios: "26.0"; }; isSupported: () => boolean; } & { isSupported: () => boolean; }; }; //#endregion //#region src/apis/domains/_viral/getCampaign/getCampaign.d.ts type GetCampaignOptions = GetViralCampaignParams; //#endregion //#region src/apis/domains/_viral/share/share.d.ts type ShareOptions = ShareViralCampaignParams; //#endregion //#region src/apis/domains/_viral/track/track.d.ts type TrackOptions = TrackViralParams; //#endregion //#region src/apis/domains/_viral/viral.d.ts declare const Viral: { /** * 바이럴 캠페인 정보를 조회해요. */ getCampaign: (options: GetCampaignOptions) => Promise; /** * 바이럴 캠페인을 카카오톡으로 공유해요. */ share: (options: ShareOptions) => Promise; /** * 바이럴 캠페인 보상 지급 시점을 기록해요. */ track: (options: TrackOptions) => Promise; }; //#endregion //#region src/apis/events/appsInTossEvent/appsInTossEvent.d.ts /** 앞으로 추가될 앱인토스 이벤트를 위해 예약된 이벤트 맵이에요. */ type AppsInTossEvent = {}; /** * 앱인토스 전용 이벤트 버스예요. 현재 등록된 이벤트는 없어요. */ declare const appsInTossEvent: { addEventListener: (event: K, args: { onEvent: AppsInTossEvent[K]["onEvent"]; onError?: AppsInTossEvent[K]["onError"]; options?: AppsInTossEvent[K]["options"]; }) => () => void; }; //#endregion //#region src/apis/events/graniteEvent/graniteEvent.d.ts type GraniteEvent = { backEvent: { onEvent: () => void; onError?: (error: Error) => void; options?: void; }; homeEvent: { onEvent: () => void; onError?: (error: Error) => void; options?: void; }; }; /** * 시스템 뒤로가기(`backEvent`)·홈 이동(`homeEvent`) 이벤트를 구독해요. * 반환되는 함수를 호출하면 구독이 해제돼요. */ declare const graniteEvent: { addEventListener: (event: K, args: { onEvent: GraniteEvent[K]["onEvent"]; onError?: GraniteEvent[K]["onError"]; options?: GraniteEvent[K]["options"]; }) => () => void; }; //#endregion //#region src/apis/events/_onVisibilityChangedByTransparentServiceWeb/onVisibilityChangedByTransparentServiceWeb.d.ts interface OnVisibilityChangedByTransparentServiceWebSubscription { remove: () => void; } type OnVisibilityChangedByTransparentServiceWebEventEmitter = { name: "visibilityChangedByTransparentServiceWeb"; params: [boolean]; }; /** * 투명 서비스 웹뷰의 가시성 변화를 구독해요. callbackId로 웹뷰를 구분하고, * cleanup 함수를 반환해요. */ declare const onVisibilityChangedByTransparentServiceWeb: (eventParams: { options: { callbackId: string; }; onEvent: (isVisible: boolean) => void; onError: (error: unknown) => void; }) => (() => void); //#endregion //#region src/apis/events/_tdsEvent/tdsEvent.d.ts type TdsEvent = { navigationAccessoryEvent: { onEvent: (data: { id: string; }) => void; onError?: (error: Error) => void; options: undefined; }; }; /** * TDS 네비게이션 바 이벤트(`navigationAccessoryEvent`)를 구독해요. * 반환되는 함수를 호출하면 구독이 해제돼요. */ declare const tdsEvent: { addEventListener: (event: K, args: { onEvent: TdsEvent[K]["onEvent"]; onError?: TdsEvent[K]["onError"]; options?: TdsEvent[K]["options"]; }) => () => void; }; //#endregion //#region src/apis/_partner/addAccessoryButton/addAccessoryButton.d.ts /** * 네비게이션 바에 액세서리 버튼을 추가해요. * 버튼이 눌리면 `tdsEvent.navigationAccessoryEvent`로 `{ id }`가 전달돼요. */ declare function addAccessoryButton(params: AddAccessoryButtonParams): Promise; //#endregion //#region src/apis/_partner/removeAccessoryButton/removeAccessoryButton.d.ts /** * `addAccessoryButton`으로 추가한 액세서리 버튼을 제거해요. */ declare function removeAccessoryButton(): Promise; //#endregion //#region src/apis/_partner/index.d.ts /** * 파트너 웹뷰 전용 네비게이션 바 제어예요. * (flat 함수는 SDK 표면에 없어서 노출하지 않아요 — partner 객체로만 써요) */ declare const partner: { addAccessoryButton: typeof addAccessoryButton; removeAccessoryButton: typeof removeAccessoryButton; }; //#endregion //#region src/v2-compat.d.ts /** * @deprecated v2 호환용 별칭. `getAnonymousKey` 또는 `User.getAnonymousKey`를 사용해주세요. */ declare const getUserKeyForGame: (() => Promise) & { MIN_TOSS_APP_VERSION: { readonly android: "5.232.0"; readonly ios: "5.232.0"; }; isSupported: () => boolean; }; /** * @deprecated v2 호환용 별칭. `grantPromotionReward` 또는 `Promotion.grantReward`를 사용해주세요. */ declare const grantPromotionRewardForGame: ((params: GrantPromotionRewardParams) => Promise<"ERROR" | GrantPromotionRewardResponse | { errorCode: string; message: string; } | undefined>) & { MIN_TOSS_APP_VERSION: { readonly android: "5.232.0"; readonly ios: "5.232.0"; }; isSupported: () => boolean; }; /** * @deprecated v2 호환용 타입. v3에서는 `GetAnonymousKeyResponse`를 사용해주세요. */ type GetAnonymousKeySuccessResponse = GetAnonymousKeyResponse; /** * @deprecated v2 호환용 타입. `getAnonymousKey`를 사용해주세요. */ type GetUserKeyForGameSuccessResponse = GetAnonymousKeyResponse; /** * @deprecated v2 호환용 타입. `getAnonymousKey`를 사용해주세요. */ type GetUserKeyForGameErrorResponse = { type: "NOT_AVAILABLE"; }; /** * @deprecated v2 호환용 타입. `getAnonymousKey`를 사용해주세요. */ type GetUserKeyForGameResponse = GetAnonymousKeyResponse | GetUserKeyForGameErrorResponse; /** * @deprecated v2 호환용 타입. `GrantPromotionRewardResponse`를 사용해주세요. */ type GrantPromotionRewardSuccessResponse = GrantPromotionRewardResponse; /** * @deprecated v2 호환용 타입. */ interface GrantPromotionRewardErrorResponse { code: string; [key: string]: any; } /** * @deprecated v2 호환용 타입. */ interface GrantPromotionRewardErrorResult { errorCode: string; message: string; } /** * @deprecated v2 호환용 타입. `grantPromotionReward`를 사용해주세요. */ type GrantPromotionRewardForGameSuccessResponse = GrantPromotionRewardResponse; /** * @deprecated v2 호환용 타입. `grantPromotionReward`를 사용해주세요. */ type GrantPromotionRewardForGameErrorResponse = GrantPromotionRewardErrorResponse; /** * @deprecated v2 호환용 타입. `grantPromotionReward`를 사용해주세요. */ type GrantPromotionRewardForGameErrorResult = GrantPromotionRewardErrorResult; /** * @deprecated v2 호환용 타입. `grantPromotionReward`를 사용해주세요. */ type GrantPromotionRewardForGameResponse = GrantPromotionRewardForGameSuccessResponse | GrantPromotionRewardForGameErrorResponse; /** * @deprecated v2 호환용 타입. */ type GrantPromotionRewardResult = GrantPromotionRewardResponse | GrantPromotionRewardErrorResult | "ERROR" | undefined; /** * @deprecated v2 호환용 타입. */ interface AdNetworkResponseInfo { adSourceId: string; adSourceName: string; adSourceInstanceId: string; adSourceInstanceName: string; adNetworkClassName: string | null; } /** * @deprecated v2 호환용 타입. */ interface ResponseInfo { adNetworkInfoArray: Array; loadedAdNetworkInfo: AdNetworkResponseInfo | null; responseId: string | null; } /** * @deprecated v2 호환용 타입. v3의 `LoadAdMobResult`를 사용해주세요. */ interface AdMobLoadResult { adGroupId: string; adUnitId: string; responseInfo: ResponseInfo; } /** * @deprecated v2 호환용 타입. */ type AdUserEarnedReward = { type: "userEarnedReward"; data: { unitType: string; unitAmount: number; }; }; /** * @deprecated v2 호환용 타입. */ type AdMobFullScreenEvent = { type: "clicked"; } | { type: "dismissed"; } | { type: "failedToShow"; } | { type: "impression"; } | { type: "show"; }; /** * @deprecated v2 호환용 타입. */ interface AdMobHandlerParams { options: Options; onEvent: (event: Event) => void; onError: (error: unknown) => void; } /** * @deprecated v2 호환용 타입. */ interface InterstitialAd { adUnitId: string; responseInfo: ResponseInfo; } /** * @deprecated v2 호환용 타입. */ interface RewardedAd { adUnitId: string; responseInfo: ResponseInfo; } /** * @deprecated v2 호환용 타입. */ type LoadAdMobParams = AdMobHandlerParams; /** * @deprecated v2 호환용 타입. */ type ShowAdMobParams = AdMobHandlerParams; /** * @deprecated v2 호환용 타입. */ interface LoadFullScreenAdParams { options: LoadFullScreenAdOptions; onEvent: (data: LoadFullScreenAdEvent) => void; onError: (err: unknown) => void; } /** * @deprecated v2 호환용 타입. */ interface ShowFullScreenAdParams { options: ShowFullScreenAdOptions; onEvent: (data: ShowFullScreenAdEvent) => void; onError: (err: unknown) => void; } /** * @deprecated v2 호환용 타입. */ type GetClipboardText = () => Promise; /** * @deprecated v2 호환용 타입. */ type SetClipboardText = (text: string) => Promise; /** * @deprecated v2 호환용 타입. */ interface SetClipboardTextOptions { text: string; } /** * @deprecated v2 호환용 타입. */ type FetchContacts = (options: FetchContactsOptions) => Promise; /** * @deprecated v2 호환용 타입. */ type FetchAlbumPhotos = (options?: FetchAlbumPhotosOptions) => Promise; /** * @deprecated v2 호환용 타입. */ type OpenCamera = (options?: OpenCameraOptions) => Promise; /** * @deprecated v2 호환용 타입. */ type GetCurrentLocation = (options: GetCurrentLocationOptions) => Promise; /** * @deprecated v2 호환용 타입. */ type StartUpdateLocation = (eventParams: StartUpdateLocationEventParams) => () => void; /** * @deprecated v2 호환용 타입. */ interface EventEmitterSchema { name: K; params: P; } /** * @deprecated v2 호환용 타입. */ type UpdateLocationEventEmitter = EventEmitterSchema<"updateLocation", [Location]>; /** * @deprecated v2 호환용 타입. spec의 `AddAccessoryButtonParams`를 사용해주세요. */ type AddAccessoryButtonOptions = AddAccessoryButtonParams; /** * @deprecated v2 호환용 타입. */ type Primitive = string | number | boolean | null | undefined | symbol; //#endregion export { Accuracy, AdMobFullScreenEvent, AdMobHandlerParams, AdMobLoadResult, AdNetworkResponseInfo, AdUserEarnedReward, AddAccessoryButtonOptions, type AddAccessoryButtonParams, type AlbumItemResponse, type AlbumItemType, Analytics, type AppLoginResponse, AppsInTossEvent, type AppsInTossGlobals, type AppsInTossSignTossCertParams, type BasicProductListItem, CheckoutPaymentOptions, type CheckoutPaymentResult, Clipboard, type CompatiblePlaceholderArgument, type CompletedOrRefundedOrder, type CompletedOrRefundedOrdersResult, ConsentedUserData, ConsentedUserDataKey, type ConsumableProductListItem, type ContactEntity, ContactResult, type ContactsViralCloseData, type ContactsViralEvent, type ContactsViralParams as ContactsViralOption, ContactsViralParams$1 as ContactsViralParams, type ContactsViralRewardData, ContactsViralSuccessEvent, type CreateLinkParams, type CreatePermissionFunctionOptions, type CreateSubscriptionPurchaseOrderOptions, DeclaredAgeRange, Device, type DeviceOrientation, Environment, EventEmitterSchema, type EventLogParams, type FetchAlbumItemsOptions, FetchAlbumPhotos, FetchAlbumPhotosOptions, FetchAlbumPhotosPermissionError, FetchContacts, FetchContactsOptions, FetchContactsPermissionError, type FetchTossAdOptions, File, Game, type GameCenterGameProfileResponse, type GetAnonymousKeyResponse, GetAnonymousKeySuccessResponse, type GetCampaignOptions, GetClipboardText, GetClipboardTextPermissionError, type GetCompletedOrRefundedOrdersParams, GetConsentedUserDataErrorCode, type GetConsentedUserDataOptions, GetCurrentLocation, GetCurrentLocationOptions, GetCurrentLocationPermissionError, type GetDeclaredAgeRangeParams, type GetPendingOrdersResult, type GetPermissionFunction, GetUserKeyForGameErrorResponse, GetUserKeyForGameResponse, GetUserKeyForGameSuccessResponse, GoogleAdMob, GraniteEvent, GrantPromotionRewardErrorResponse, GrantPromotionRewardErrorResult, GrantPromotionRewardForGameErrorResponse, GrantPromotionRewardForGameErrorResult, GrantPromotionRewardForGameResponse, GrantPromotionRewardForGameSuccessResponse, type GrantPromotionRewardParams, type GrantPromotionRewardResponse, GrantPromotionRewardResult, GrantPromotionRewardSuccessResponse, type GrantRewardParams, type GrantRewardResult, HapticFeedbackOptions, HapticFeedbackType, IAP, type IapCreateOneTimePurchaseOrderOptions, type IapCreateOneTimePurchaseOrderResult, type IapCreateSubscriptionPurchaseOrderResult, type IapGetProductItemListResult, type IapProductListItem, type IapSubscriptionInfoResponse, type IapSubscriptionInfoResult, type ImageResponse, type InternalGetPermissionFunction, type InternalPermissionDialogFunction, InterstitialAd, type IsAdMobLoadedOptions, type LoadAdMobAdNetworkInfo, type LoadAdMobEvent, type LoadAdMobOptions, LoadAdMobParams, type LoadAdMobResponseInfo, type LoadAdMobResult, type LoadFullScreenAdEvent, type LoadFullScreenAdOptions, LoadFullScreenAdParams, type Location, type LocationCoords, type LogParam, type LoggerParams, Migration, NavigationBar, type NavigationBarTheme, NetworkStatus, type NonConsumableProductListItem, Notification, type NotificationAgreementResult, type Offer, OnVisibilityChangedByTransparentServiceWebEventEmitter, OnVisibilityChangedByTransparentServiceWebSubscription, OpenCamera, OpenCameraOptions, OpenCameraPermissionError, type OpenPDFViewerParams, type OpenPDFViewerResult, type OriginStorageDump, type PendingOrder, type PermissionAccess, type PermissionDialogFunction, type PermissionDialogResult, PermissionError, type PermissionErrorConstructorParams, type PermissionErrorType, type PermissionFunctionName, type PermissionFunctionWithDialog, type PermissionName, type PermissionStatus, Primitive, Promotion, RequestNotificationAgreementOptions, type RequestNotificationAgreementParams, type RequestPermissionFunction, type RequestTossPayPaysBillingOptions, type RequestTossPayPaysBillingResult, ResponseInfo, Review, RewardFromContactsViralEvent, RewardedAd, SafeArea, SafeAreaInsets, type SaveBase64DataParams, Screen, SetClipboardText, SetClipboardTextOptions, SetClipboardTextPermissionError, type SetDeviceOrientationOptions, type SetIosSwipeGestureEnabledOptions, type SetNavigationBarOptions, type SetScreenAwakeModeOptions, type SetSecureScreenOptions, Share, type ShareOptions, type ShowAdMobEvent, type ShowAdMobOptions, ShowAdMobParams, type ShowFullScreenAdEvent, type ShowFullScreenAdOptions, ShowFullScreenAdParams, type Sku, StartUpdateLocation, StartUpdateLocationEventParams, StartUpdateLocationOptions, StartUpdateLocationPermissionError, Storage, type SubmitGameCenterLeaderBoardScoreResponse, type SubscriptionProductListItem, TdsEvent, type TossAdEventLogParams, TossAds, type AttachBannerOptions as TossAdsAttachBannerOptions, type AttachBannerResult as TossAdsAttachBannerResult, type AttachOptions as TossAdsAttachOptions, type BannerSlotCallbacks as TossAdsBannerSlotCallbacks, type BannerSlotErrorPayload as TossAdsBannerSlotErrorPayload, type BannerSlotEventPayload as TossAdsBannerSlotEventPayload, type InitializeOptions as TossAdsInitializeOptions, TossAuth, TossPay, type TrackOptions, UpdateLocationEventEmitter, User, Viral, appLogin, appsInTossEvent, appsInTossSignTossCert, checkoutPayment, closeView, contactsViral, createAsyncBridge, createConstantBridge, createEventBridge, env, eventLog, fetchAlbumItems, fetchAlbumPhotos, fetchContacts, generateHapticFeedback, getAnonymousKey, getAppsInTossGlobals, getClipboardText, getConsentedUserData, getCurrentLocation, getDeclaredAgeRange, getDeviceId, getGameCenterGameProfile, getGroupId, getIsTossLoginIntegratedService, getLocale, getNetworkStatus, getOperationalEnvironment, getPermission, getPlatformOS, getSafeAreaInsets, getSchemeUri, getServerTime, getTossAppVersion, getTossShareLink, getUserKeyForGame, graniteEvent, grantPromotionReward, grantPromotionRewardForGame, isMinVersionSupported, loadFullScreenAd, onVisibilityChangedByTransparentServiceWeb, openCamera, openGameCenterLeaderboard, openPDFViewer, openPermissionDialog, openURL, partner, requestNotificationAgreement, requestPermission, requestReview, requestTossPayPaysBilling, saveBase64Data, setClipboardText, setDeviceOrientation, setIosSwipeGestureEnabled, setScreenAwakeMode, setSecureScreen, share, showFullScreenAd, startUpdateLocation, submitGameCenterLeaderBoardScore, tdsEvent };