@apps-in-toss/framework 0.0.35 → 0.0.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bridge-meta.d.ts +1 -0
- package/dist/bridge-meta.js +183 -0
- package/dist/index.cjs +179 -94
- package/dist/index.js +144 -59
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@apps-in-toss/native-modules/bridges-meta.json';
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
// ../../.yarn/__virtual__/@apps-in-toss-native-modules-virtual-4a79bcc1be/0/cache/@apps-in-toss-native-modules-file-24bf1cdf34-d3a2a29b7c.zip/node_modules/@apps-in-toss/native-modules/dist/bridges-meta.json
|
|
2
|
+
var bridges_meta_default = [
|
|
3
|
+
{
|
|
4
|
+
identifier: "closeView",
|
|
5
|
+
dts: "/**\n * @public\n * @category \uD654\uBA74 \uC81C\uC5B4\n * @kind function\n * @name closeView\n * @description \uD604\uC7AC \uD654\uBA74\uC744 \uB2EB\uB294 \uD568\uC218\uC5D0\uC694. \uC608\uB97C \uB4E4\uC5B4, \"\uB2EB\uAE30\" \uBC84\uD2BC\uC744 \uB20C\uB7EC\uC11C \uC11C\uBE44\uC2A4\uB97C \uC885\uB8CC\uD560 \uB54C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694.\n * @returns {Promise<void>}\n *\n * @example\n * ### \uB2EB\uAE30 \uBC84\uD2BC\uC744 \uB20C\uB7EC \uD654\uBA74 \uB2EB\uAE30\n *\n * ```tsx\n * import { Button } from 'react-native';\n * import { closeView } from 'react-native-bedrock';\n *\n * function CloseButton() {\n * return <Button title=\"\uB2EB\uAE30\" onPress={closeView} />;\n * }\n * ```\n */\nexport declare function closeView(): Promise<void>;\n\nexport {};\n"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
identifier: "generateHapticFeedback",
|
|
9
|
+
dts: 'export type HapticFeedbackType = "tickWeak" | "tap" | "tickMedium" | "softMedium" | "basicWeak" | "basicMedium" | "success" | "error" | "wiggle" | "confetti";\n/**\n * @public\n * @category \uC778\uD130\uB809\uC158\n * @name HapticFeedbackOptions\n * @description\n * generateHapticFeedback \uD568\uC218\uC5D0 \uC804\uB2EC\uD560 \uD585\uD2F1\uC9C4\uB3D9\uC758 \uD0C0\uC785\uC744 \uB098\uD0C0\uB0B4\uC694. \uC9C4\uB3D9\uD0C0\uC785\uC758 \uC885\uB958\uB294 \uB2E4\uC74C\uACFC \uAC19\uC544\uC694.\n * ```typescript\n * type HapticFeedbackType =\n * | "tickWeak"\n * | "tap"\n * | "tickMedium"\n * | "softMedium"\n * | "basicWeak"\n * | "basicMedium"\n * | "success"\n * | "error"\n * | "wiggle"\n * | "confetti";\n * ```\n * @typedef { type: HapticFeedbackType } HapticFeedbackOptions\n * @typedef { "tickWeak" | "tap" | "tickMedium" | "softMedium" | "basicWeak" | "basicMedium" | "success" | "error" | "wiggle" | "confetti" } HapticFeedbackType\n *\n */\nexport interface HapticFeedbackOptions {\n type: HapticFeedbackType;\n}\n/**\n * @public\n * @category \uC778\uD130\uB809\uC158\n * @name generateHapticFeedback\n * @description \uB514\uBC14\uC774\uC2A4\uC5D0 \uD585\uD2F1 \uC9C4\uB3D9\uC744 \uC77C\uC73C\uD0A4\uB294 \uD568\uC218\uC608\uC694. \uC608\uB97C \uB4E4\uC5B4, \uBC84\uD2BC \uD130\uCE58\uB098 \uD654\uBA74\uC804\uD658\uC5D0 \uB4DC\uB77C\uB9C8\uD2F1\uD55C \uD6A8\uACFC\uB97C \uC8FC\uACE0 \uC2F6\uC744 \uB54C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694. [HapticFeedbackOptions](/react-native/reference/native-modules/\uC778\uD130\uB809\uC158/HapticFeedbackOptions.html)\uC5D0\uC11C \uC9C4\uB3D9\uD0C0\uC785\uC744 \uD655\uC778\uD574 \uBCF4\uC138\uC694.\n * @returns {void}\n *\n * @example\n * ### \uBC84\uD2BC\uC744 \uB20C\uB7EC \uD585\uD2F1 \uC77C\uC73C\uD0A4\uAE30\n *\n * ```tsx\n * import { Button } from \'react-native\';\n * import { generateHapticFeedback } from \'react-native-bedrock\';\n *\n * function GenerateHapticFeedback() {\n * return <Button title="\uD585\uD2F1" onPress={() => { generateHapticFeedback( { type: "tickWeak"}) }} />;\n * }\n * ```\n */\nexport declare function generateHapticFeedback(options: HapticFeedbackOptions): Promise<void>;\n\nexport {};\n'
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
identifier: "share",
|
|
13
|
+
dts: "/**\n * @public\n * @category \uACF5\uC720\n * @kind function\n * @name share\n * @description\n * \uC0AC\uC6A9\uC790\uAC00 \uCF58\uD150\uCE20\uB97C \uB2E4\uB978 \uC0AC\uB78C\uACFC \uACF5\uC720\uD560 \uC218 \uC788\uB3C4\uB85D \uB124\uC774\uD2F0\uBE0C \uACF5\uC720 \uC2DC\uD2B8\uB97C \uD45C\uC2DC\uD574\uC694.\n * `options.message` \uC18D\uC131\uC5D0 \uACF5\uC720\uD560 \uBA54\uC2DC\uC9C0\uB97C \uC804\uB2EC\uD558\uBA74, \uC0AC\uC6A9\uC790\uAC00 \uC120\uD0DD\uD560 \uC218 \uC788\uB294 \uC571 \uBAA9\uB85D\uC774 \uD45C\uC2DC\uB3FC\uC694.\n * \uC608\uB97C \uB4E4\uC5B4, \uC0AC\uC6A9\uC790\uAC00 \uD14D\uC2A4\uD2B8 \uBA54\uC2DC\uC9C0\uB97C \uACF5\uC720\uD558\uAC70\uB098 \uBA54\uBAA8 \uC571\uC5D0 \uC800\uC7A5\uD558\uB824\uACE0 \uD560 \uB54C \uC720\uC6A9\uD574\uC694.\n * @param {object} options - \uACF5\uC720\uD560 \uBA54\uC2DC\uC9C0\uB97C \uB2F4\uC740 \uAC1D\uCCB4\uC608\uC694.\n * @param {string} options.message - \uACF5\uC720\uD560 \uD14D\uC2A4\uD2B8 \uBB38\uC790\uC5F4\uC774\uC5D0\uC694. \uC608\uB97C \uB4E4\uC5B4, \"\uC548\uB155\uD558\uC138\uC694! \uC774 \uB0B4\uC6A9\uC744 \uACF5\uC720\uD569\uB2C8\uB2E4.\"\n *\n * @example\n * ### \uACF5\uC720\uD558\uAE30 \uAE30\uB2A5 \uAD6C\uD604\uD558\uAE30\n *\n * \uC544\uB798\uB294 \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uBA74 \uBA54\uC2DC\uC9C0\uB97C \uACF5\uC720\uD558\uB294 \uAC04\uB2E8\uD55C \uC608\uC81C\uC608\uC694.\n *\n * ```tsx\n * import { share } from 'react-native-bedrock';\n * import { Button } from 'react-native';\n *\n * function MyPage() {\n * return (\n * <Button\n * title=\"\uACF5\uC720\"\n * onPress={() => share({ message: '\uACF5\uC720\uD560 \uBA54\uC2DC\uC9C0\uC785\uB2C8\uB2E4.' })}\n * />\n * );\n * }\n * ```\n */\nexport declare function share(message: {\n message: string;\n}): Promise<void>;\n\nexport {};\n"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
identifier: "setSecureScreen",
|
|
17
|
+
dts: "/**\n * @public\n * @name setSecureScreen\n * @category \uD654\uBA74 \uC81C\uC5B4\n * @kind function\n * @description\n * \uD654\uBA74 \uCEA1\uCCD0\uB97C \uCC28\uB2E8\uD574\uC11C \uBBFC\uAC10\uD55C \uC815\uBCF4\uAC00 \uC720\uCD9C\uB418\uC9C0 \uC54A\uB3C4\uB85D \uBCF4\uD638\uD558\uAC70\uB098, \uD544\uC694\uD560 \uACBD\uC6B0 \uCEA1\uCCD0\uB97C \uD5C8\uC6A9\uD558\uB3C4\uB85D \uC124\uC815\uD574\uC694. \uC608\uB97C \uB4E4\uC5B4 \uBCF4\uC548\uC774 \uC911\uC694\uD55C \uD654\uBA74\uC5D0\uC11C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @param {object} options \uD654\uBA74 \uCEA1\uCCD0 \uC124\uC815 \uC635\uC158\uC774\uC5D0\uC694.\n * @param {boolean} options.enabled \uD654\uBA74 \uCEA1\uCCD0\uB97C \uCC28\uB2E8\uD560\uC9C0 \uC5EC\uBD80\uB97C \uC124\uC815\uD574\uC694. `true`\uBA74 \uCEA1\uCCD0\uB97C \uCC28\uB2E8\uD558\uACE0, `false`\uBA74 \uD5C8\uC6A9\uD574\uC694.\n * @returns {enabled: boolean} \uD604\uC7AC \uC124\uC815\uB41C \uCEA1\uCCD0 \uCC28\uB2E8 \uC0C1\uD0DC\uB97C \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uCEA1\uCCD0 \uD5C8\uC6A9 \uC0C1\uD0DC \uBCC0\uACBD\uD558\uAE30\n *\n * ```tsx\n * import { Button } from 'react-native';\n * import { setSecureScreen } from 'react-native-bedrock';\n *\n * function SetSecureScreen() {\n * return <Button title=\"\uCEA1\uCCD0 \uB9C9\uAE30\" onPress={async () => {\n * await setSecureScreen({ enabled: true });\n * }} />;\n * }\n * ```\n */\nexport declare function setSecureScreen(options: {\n enabled: boolean;\n}): Promise<{\n enabled: boolean;\n}>;\n\nexport {};\n"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
identifier: "setScreenAwakeMode",
|
|
21
|
+
dts: "/**\n * @public\n * @category \uD654\uBA74 \uC81C\uC5B4\n * @kind function\n * @name setScreenAwakeMode\n * @description\n * `setScreenAwakeMode` \uD568\uC218\uB294 \uD654\uBA74\uC774 \uD56D\uC0C1 \uCF1C\uC838 \uC788\uB3C4\uB85D \uC124\uC815\uD558\uAC70\uB098 \uD574\uC81C\uD558\uB294 \uAE30\uB2A5\uC744 \uC81C\uACF5\uD574\uC694.\n * \uC774 \uAE30\uB2A5\uC740 \uC6F9\uD230, \uB3D9\uC601\uC0C1, \uBB38\uC11C \uC77D\uAE30 \uB4F1 \uD654\uBA74\uC744 \uC9C0\uC18D\uD574\uC11C \uCF1C\uB450\uC5B4\uC57C \uD558\uB294 \uC0C1\uD669\uC5D0\uC11C \uC720\uC6A9\uD574\uC694.\n *\n * `enabled` \uC635\uC158\uC744 `true`\uB85C \uC124\uC815\uD558\uBA74 \uD654\uBA74\uC774 \uAEBC\uC9C0\uC9C0 \uC54A\uAC8C \uC720\uC9C0\uD558\uACE0, `false`\uB85C \uC124\uC815\uD558\uBA74 \uAE30\uBCF8 \uD654\uBA74 \uBCF4\uD638\uAE30 \uC2DC\uAC04\uC5D0 \uB530\uB77C \uD654\uBA74\uC774 \uAEBC\uC838\uC694. \uD2B9\uD788, \uC774 \uD568\uC218\uB294 \uC571 \uC804\uCCB4\uC5D0 \uC601\uD5A5\uC744 \uBBF8\uCE58\uBBC0\uB85C \uD2B9\uC815 \uD654\uBA74\uC5D0\uC11C\uB9CC \uC0AC\uC6A9\uD558\uB824\uBA74 \uD654\uBA74\uC744 \uBC97\uC5B4\uB0A0 \uB54C \uC774\uC804 \uC0C1\uD0DC\uB85C \uBCF5\uAD6C\uD558\uB294 \uCD94\uAC00 \uC791\uC5C5\uC774 \uD544\uC694\uD574\uC694.\n *\n * \uC608\uB97C \uB4E4\uC5B4, \uBBF8\uB514\uC5B4 \uCF58\uD150\uCE20 \uAC10\uC0C1 \uD654\uBA74\uC5D0\uC11C\uB294 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC\uB97C \uD65C\uC131\uD654\uD558\uACE0, \uD654\uBA74\uC744 \uB5A0\uB0A0 \uB54C \uC124\uC815\uC744 \uBCF5\uAD6C\uD574\uC11C \uBD88\uD544\uC694\uD55C \uBC30\uD130\uB9AC \uC18C\uBAA8\uB97C \uBC29\uC9C0\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * \uB2E4\uB9CC, \uC571\uC5D0\uC11C \uBC97\uC5B4\uB098\uB294 \uC0C1\uD669\uC5D0\uC11C\uB294 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC\uAC00 \uBE44\uD65C\uC131\uD654\uB420 \uC218 \uC788\uC73C\uB2C8 \uC8FC\uC758\uD574\uC57C \uD574\uC694.\n *\n * @param {object} options \uD654\uBA74 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC\uC758 \uC124\uC815 \uAC12\uC774\uC5D0\uC694.\n * @param {boolean} options.enabled \uD654\uBA74 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC\uB97C \uCF1C\uAC70\uB098 \uB044\uB294 \uC635\uC158\uC774\uC5D0\uC694.\n * `true`\uB85C \uC124\uC815\uD558\uBA74 \uD654\uBA74\uC774 \uD56D\uC0C1 \uCF1C\uC9C0\uACE0, `false`\uB85C \uC124\uC815\uD558\uBA74 \uD654\uBA74 \uBCF4\uD638\uAE30 \uC2DC\uAC04\uC5D0 \uB530\uB77C \uAEBC\uC838\uC694.\n *\n * @returns {object} \uD604\uC7AC \uD654\uBA74 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC\uC758 \uC124\uC815 \uC0C1\uD0DC\uB97C \uBC18\uD658\uD574\uC694.\n * @returns {boolean} enabled \uD654\uBA74 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC\uAC00 \uCF1C\uC838 \uC788\uB294\uC9C0 \uC5EC\uBD80\uB97C \uB098\uD0C0\uB0B4\uB294 \uAC12\uC774\uC5D0\uC694.\n *\n * @example\n * ### \uD654\uBA74 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC \uC124\uC815\uD558\uAE30\n *\n * ```tsx\n * import { Button } from 'react-native';\n * import { setScreenAwakeMode } from 'react-native-bedrock';\n *\n * function SetScreenAwakeMode() {\n * return (\n * <Button\n * title=\"\uD654\uBA74 \uD56D\uC0C1 \uCF1C\uAE30\"\n * onPress={() => {\n * setScreenAwakeMode({ enabled: true });\n * }}\n * />\n * );\n * }\n * ```\n *\n * ### \uD654\uBA74 \uD56D\uC0C1 \uCF1C\uC9D0 \uBAA8\uB4DC \uBCF5\uAD6C\uD558\uAE30\n * \uD2B9\uC815 \uD654\uBA74\uC744 \uBC97\uC5B4\uB0A0 \uB54C \uC774\uC804 \uC0C1\uD0DC\uB85C \uBCF5\uAD6C\uD558\uB824\uBA74 \uB2E4\uC74C\uACFC \uAC19\uC774 `useEffect`\uB97C \uC0AC\uC6A9\uD558\uC138\uC694.\n *\n * ```tsx\n * import { useEffect } from 'react';\n * import { setScreenAwakeMode, cleanUp } from 'react-native-bedrock';\n *\n * function MediaScreen() {\n * useEffect(() => {\n * setScreenAwakeMode({ enabled: true });\n *\n * return () => {\n * setScreenAwakeMode({ enabled: false }); // \uC124\uC815\uC744 \uC774\uC804 \uC0C1\uD0DC\uB85C \uBCF5\uAD6C\uD574\uC694.\n * };\n * }, []);\n *\n * return <Text>\uBBF8\uB514\uC5B4 \uCF58\uD150\uCE20\uB97C \uAC10\uC0C1\uD558\uB294 \uD654\uBA74</Text>;\n * }\n * ```\n */\nexport declare function setScreenAwakeMode(options: {\n enabled: boolean;\n}): Promise<{\n enabled: boolean;\n}>;\n\nexport {};\n"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
identifier: "getNetworkStatus",
|
|
25
|
+
dts: 'export type NetworkStatus = "OFFLINE" | "WIFI" | "2G" | "3G" | "4G" | "5G" | "WWAN" | "UNKNOWN";\n/**\n * @public\n * @category \uB124\uD2B8\uC6CC\uD06C\n * @kind function\n * @name getNetworkStatus\n * @description\n * \uB514\uBC14\uC774\uC2A4\uC758 \uD604\uC7AC \uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uAC00\uC838\uC624\uB294 \uD568\uC218\uC608\uC694.\n * \uBC18\uD658 \uAC12\uC740 `NetworkStatus` \uD0C0\uC785\uC73C\uB85C, \uC778\uD130\uB137 \uC5F0\uACB0 \uC5EC\uBD80\uC640 \uC5F0\uACB0 \uC720\uD615(Wi-Fi, \uBAA8\uBC14\uC77C \uB370\uC774\uD130 \uB4F1)\uC744 \uB098\uD0C0\uB0B4\uC694. \uAC12\uC740 \uB2E4\uC74C \uC911 \uD558\uB098\uC608\uC694.\n *\n * - `OFFLINE`: \uC778\uD130\uB137\uC5D0 \uC5F0\uACB0\uB418\uC9C0 \uC54A\uC740 \uC0C1\uD0DC\uC608\uC694.\n * - `WIFI`: Wi-Fi\uC5D0 \uC5F0\uACB0\uB41C \uC0C1\uD0DC\uC608\uC694.\n * - `2G`: 2G \uB124\uD2B8\uC6CC\uD06C\uC5D0 \uC5F0\uACB0\uB41C \uC0C1\uD0DC\uC608\uC694.\n * - `3G`: 3G \uB124\uD2B8\uC6CC\uD06C\uC5D0 \uC5F0\uACB0\uB41C \uC0C1\uD0DC\uC608\uC694.\n * - `4G`: 4G \uB124\uD2B8\uC6CC\uD06C\uC5D0 \uC5F0\uACB0\uB41C \uC0C1\uD0DC\uC608\uC694.\n * - `5G`: 5G \uB124\uD2B8\uC6CC\uD06C\uC5D0 \uC5F0\uACB0\uB41C \uC0C1\uD0DC\uC608\uC694.\n * - `WWAN`: \uC778\uD130\uB137\uC740 \uC5F0\uACB0\uB418\uC5C8\uC9C0\uB9CC, \uC5F0\uACB0 \uC720\uD615(Wi-Fi, 2G~5G)\uC744 \uC54C \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC608\uC694. \uC774 \uC0C1\uD0DC\uB294 iOS\uC5D0\uC11C\uB9CC \uD655\uC778\uD560 \uC218 \uC788\uC5B4\uC694.\n * - `UNKNOWN`: \uC778\uD130\uB137 \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uC54C \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC608\uC694. \uC774 \uC0C1\uD0DC\uB294 \uC548\uB4DC\uB85C\uC774\uB4DC\uC5D0\uC11C\uB9CC \uD655\uC778\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @returns {Promise<NetworkStatus>} \uB124\uD2B8\uC6CC\uD06C \uC0C1\uD0DC\uB97C \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uD604\uC7AC \uB124\uD2B8\uC6CC\uD06C \uC0C1\uD0DC \uAC00\uC838\uC624\uAE30\n *\n * \uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uAC00\uC838\uC640 \uD654\uBA74\uC5D0 \uD45C\uC2DC\uD558\uB294 \uC608\uC81C\uC608\uC694.\n *\n * ```tsx\n * import { useState, useEffect } from \'react\';\n * import { Text, View } from \'react-native\';\n * import { getNetworkStatus, NetworkStatus } from \'react-native-bedrock\';\n *\n * function GetNetworkStatus() {\n * const [status, setStatus] = useState<NetworkStatus | \'\'>(\'\');\n *\n * useEffect(() => {\n * async function fetchStatus() {\n * const networkStatus = await getNetworkStatus();\n * setStatus(networkStatus);\n * }\n *\n * fetchStatus();\n * }, []);\n *\n * return (\n * <View>\n * <Text>\uD604\uC7AC \uB124\uD2B8\uC6CC\uD06C \uC0C1\uD0DC: {status}</Text>\n * </View>\n * );\n * }\n * ```\n */\nexport declare function getNetworkStatus(): Promise<NetworkStatus>;\n\nexport {};\n'
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
identifier: "setIosSwipeGestureEnabled",
|
|
29
|
+
dts: "/**\n * @public\n * @category \uD654\uBA74 \uC81C\uC5B4\n * @name setIosSwipeGestureEnabled\n * @description\n * `setIosSwipeGestureEnabled` \uD568\uC218\uB294 iOS\uC5D0\uC11C \uD654\uBA74\uC744 \uC2A4\uC640\uC774\uD504\uD558\uC5EC \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC744 \uD65C\uC131\uD654\uD558\uAC70\uB098 \uBE44\uD65C\uC131\uD654\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @param {object} options \uC2A4\uC640\uC774\uD504\uD558\uC5EC \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC744 \uD65C\uC131\uD654\uD558\uAC70\uB098 \uBE44\uD65C\uC131\uD654\uD558\uB294 \uC635\uC158\uC774\uC5D0\uC694.\n * @param {boolean} options.isEnabled \uD654\uBA74\uC744 \uC2A4\uC640\uC774\uD504\uD558\uC5EC \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC744 \uD65C\uC131\uD654\uD558\uAC70\uB098 \uBE44\uD65C\uC131\uD654\uD560 \uC218 \uC788\uC5B4\uC694. `true`\uB97C \uC124\uC815\uD558\uBA74 \uC2A4\uC640\uC774\uD504\uB85C \uB4A4\uB85C\uAC08 \uC218 \uC788\uACE0, `false`\uB97C \uC124\uC815\uD558\uBA74 \uC2A4\uC640\uC774\uD504 \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC774 \uBE44\uD65C\uC131\uD654\uB3FC\uC694.\n *\n * @returns {void}\n *\n * @example\n *\n * ### iOS\uC5D0\uC11C \uD654\uBA74 \uC2A4\uC640\uC774\uD504\uB85C \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC744 \uD65C\uC131\uD654\uD558\uAC70\uB098 \uBE44\uD65C\uC131\uD654\uD558\uAE30\n *\n * **\uC2A4\uC640\uC774\uD504 \uB044\uAE30** \uBC84\uD2BC\uC744 \uB20C\uB7EC \uD654\uBA74 \uC2A4\uC640\uC774\uD504\uB85C \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC744 \uBE44\uD65C\uC131\uD654\uD558\uAC70\uB098, **\uC2A4\uC640\uC774\uD504 \uCF1C\uAE30** \uBC84\uD2BC\uC744 \uB20C\uB7EC \uD654\uBA74 \uC2A4\uC640\uC774\uD504\uB85C \uB4A4\uB85C\uAC00\uAE30 \uAE30\uB2A5\uC744 \uD65C\uC131\uD654\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n *\n * ```tsx\n * import { setIosSwipeGestureEnabled } from 'react-native-bedrock';\n * import { Button } from 'react-native';\n *\n * function Page() {\n * return (\n * <>\n * <Button title=\"\uC2A4\uC640\uC774\uD504 \uB044\uAE30\" onPress={() => setIosSwipeGestureEnabled({ isEnabled: false })} />\n * <Button title=\"\uC2A4\uC640\uC774\uD504 \uCF1C\uAE30\" onPress={() => setIosSwipeGestureEnabled({ isEnabled: true })} />\n * </>\n * );\n * }\n * ```\n *\n */\nexport declare function setIosSwipeGestureEnabled(options: {\n isEnabled: boolean;\n}): Promise<void>;\n\nexport {};\n"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
identifier: "openURL",
|
|
33
|
+
dts: "/**\n * @public\n * @kind function\n * @category \uD654\uBA74 \uC774\uB3D9\n *\n * @name openURL\n * @signature\n * ```typescript\n * function openURL(url: string): Promise<any>;\n * ```\n *\n * @description\n * \uC9C0\uC815\uB41C URL\uC744 \uAE30\uAE30\uC758 \uAE30\uBCF8 \uBE0C\uB77C\uC6B0\uC800\uB098 \uAD00\uB828 \uC571\uC5D0\uC11C \uC5F4\uC5B4\uC694.\n * \uC774 \uD568\uC218\uB294 `react-native`\uC758 [`Linking.openURL`](https://reactnative.dev/docs/0.72/linking#openurl) \uBA54\uC11C\uB4DC\uB97C \uC0AC\uC6A9\uD558\uC5EC URL\uC744 \uC5F4\uC5B4\uC694.\n *\n * @param {string} url \uC5F4\uACE0\uC790 \uD558\uB294 URL \uC8FC\uC18C\n * @returns {Promise<any>} URL\uC774 \uC131\uACF5\uC801\uC73C\uB85C \uC5F4\uB838\uC744 \uB54C \uD574\uACB0\uB418\uB294 Promise\n *\n * @example\n *\n * ### \uC678\uBD80 URL \uC5F4\uAE30\n *\n * ```tsx\n * import { openURL } from 'react-native-bedrock';\n * import { Button } from 'react-native';\n *\n * function Page() {\n * const handlePress = () => {\n * openURL('https://google.com');\n * };\n *\n * return <Button title=\"\uAD6C\uAE00 \uC6F9\uC0AC\uC774\uD2B8 \uC5F4\uAE30\" onPress={handlePress} />;\n * }\n * ```\n */\nexport declare function openURL(url: string): Promise<any>;\n\nexport {};\n"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
identifier: "setClipboardText",
|
|
37
|
+
dts: "/**\n * @public\n * @category \uD074\uB9BD\uBCF4\uB4DC\n * @name setClipboardText\n * @description \uD14D\uC2A4\uD2B8\uB97C \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uBCF5\uC0AC\uD574\uC11C \uC0AC\uC6A9\uC790\uAC00 \uB2E4\uB978 \uACF3\uC5D0 \uBD99\uC5EC \uB123\uAE30 \uD560 \uC218 \uC788\uC5B4\uC694.\n * @param {Promise<void>} text - \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uBCF5\uC0AC\uD560 \uD14D\uC2A4\uD2B8\uC608\uC694. \uBB38\uC790\uC5F4 \uD615\uC2DD\uC73C\uB85C \uC785\uB825\uD574\uC694.\n *\n * @example\n * ### \uD14D\uC2A4\uD2B8\uB97C \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uBCF5\uC0AC\uD558\uAE30\n *\n * ```tsx\n * import { Button } from 'react-native';\n * import { setClipboardText } from '@apps-in-toss/framework';\n *\n * // '\uBCF5\uC0AC' \uBC84\uD2BC\uC744 \uB204\uB974\uBA74 \"\uBCF5\uC0AC\uD560 \uD14D\uC2A4\uD2B8\"\uAC00 \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uBCF5\uC0AC\uB3FC\uC694.\n * function CopyButton() {\n * const handleCopy = async () => {\n * try {\n * await setClipboardText('\uBCF5\uC0AC\uD560 \uD14D\uC2A4\uD2B8');\n * console.log('\uD14D\uC2A4\uD2B8\uAC00 \uBCF5\uC0AC\uB410\uC5B4\uC694!');\n * } catch (error) {\n * console.error('\uD14D\uC2A4\uD2B8 \uBCF5\uC0AC\uC5D0 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * return <Button title=\"\uBCF5\uC0AC\" onPress={handleCopy} />;\n * }\n * ```\n */\nexport declare function setClipboardText(text: string): Promise<void>;\n\nexport {};\n"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
identifier: "getClipboardText",
|
|
41
|
+
dts: "/**\n * @public\n * @category \uD074\uB9BD\uBCF4\uB4DC\n * @name getClipboardText\n * @description \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uC800\uC7A5\uB41C \uD14D\uC2A4\uD2B8\uB97C \uAC00\uC838\uC624\uB294 \uD568\uC218\uC608\uC694. \uBCF5\uC0AC\uB41C \uD14D\uC2A4\uD2B8\uB97C \uC77D\uC5B4\uC11C \uB2E4\uB978 \uC791\uC5C5\uC5D0 \uD65C\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694.\n * @returns {Promise<string>} - \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uC800\uC7A5\uB41C \uD14D\uC2A4\uD2B8\uB97C \uBC18\uD658\uD574\uC694. \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uD14D\uC2A4\uD2B8\uAC00 \uC5C6\uC73C\uBA74 \uBE48 \uBB38\uC790\uC5F4\uC744 \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uD074\uB9BD\uBCF4\uB4DC\uC758 \uD14D\uC2A4\uD2B8 \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import React, { useState } from 'react';\n * import { View, Text, Button } from 'react-native';\n * import { getClipboardText } from '@apps-in-toss/framework';\n *\n * // '\uBD99\uC5EC\uB123\uAE30' \uBC84\uD2BC\uC744 \uB204\uB974\uBA74 \uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uC800\uC7A5\uB41C \uD14D\uC2A4\uD2B8\uB97C \uAC00\uC838\uC640 \uD654\uBA74\uC5D0 \uD45C\uC2DC\uD574\uC694.\n * function PasteButton() {\n * const [text, setText] = useState('');\n *\n * const handlePress = async () => {\n * try {\n * const clipboardText = await getClipboardText();\n * setText(clipboardText || '\uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uD14D\uC2A4\uD2B8\uAC00 \uC5C6\uC5B4\uC694.');\n * } catch (error) {\n * console.error('\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uC11C \uD14D\uC2A4\uD2B8\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * return (\n * <View>\n * <Text>{text}</Text>\n * <Button title=\"\uBD99\uC5EC\uB123\uAE30\" onPress={handlePress} />\n * </View>\n * );\n * }\n * ```\n */\nexport declare function getClipboardText(): Promise<string>;\n\nexport {};\n"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
identifier: "fetchContacts",
|
|
45
|
+
dts: "/**\n * \uC5F0\uB77D\uCC98 \uC815\uBCF4\uB97C \uB098\uD0C0\uB0B4\uB294 \uD0C0\uC785\uC774\uC5D0\uC694.\n */\nexport interface ContactEntity {\n /** \uC5F0\uB77D\uCC98 \uC774\uB984\uC774\uC5D0\uC694. */\n name: string;\n /** \uC5F0\uB77D\uCC98 \uC804\uD654\uBC88\uD638\uB85C, \uBB38\uC790\uC5F4 \uD615\uC2DD\uC774\uC5D0\uC694. */\n phoneNumber: string;\n}\nexport interface ContactResult {\n result: ContactEntity[];\n nextOffset: number | null;\n done: boolean;\n}\n/**\n * @public\n * @category \uC5F0\uB77D\uCC98\n * @name fetchContacts\n * @description \uC0AC\uC6A9\uC790\uC758 \uC5F0\uB77D\uCC98 \uBAA9\uB85D\uC744 \uD398\uC774\uC9C0 \uB2E8\uC704\uB85C \uAC00\uC838\uC624\uB294 \uD568\uC218\uC608\uC694.\n * @param options - \uC5F0\uB77D\uCC98\uB97C \uAC00\uC838\uC62C \uB54C \uC9C0\uC815\uD558\uB294 \uC635\uC158 \uAC1D\uCCB4\uC608\uC694.\n * @param options.size - \uD55C \uBC88\uC5D0 \uAC00\uC838\uC62C \uC5F0\uB77D\uCC98 \uAC1C\uC218\uC608\uC694. \uC608\uB97C \uB4E4\uC5B4, 10\uC744 \uC804\uB2EC\uD558\uBA74 \uCD5C\uB300 10\uAC1C\uC758 \uC5F0\uB77D\uCC98\uB97C \uAC00\uC838\uC640\uC694.\n * @param options.offset - \uAC00\uC838\uC62C \uC5F0\uB77D\uCC98\uC758 \uC2DC\uC791 \uC9C0\uC810\uC774\uC5D0\uC694. \uCC98\uC74C \uD638\uCD9C\uD560 \uB54C\uB294 `0`\uC744 \uC804\uB2EC\uD574\uC57C \uD574\uC694. \uC774\uD6C4\uC5D0\uB294 \uC774\uC804 \uD638\uCD9C\uC5D0\uC11C \uBC18\uD658\uB41C `nextOffset` \uAC12\uC744 \uC0AC\uC6A9\uD574\uC694.\n * @param options.query - \uCD94\uAC00\uC801\uC778 \uD544\uD130\uB9C1 \uC635\uC158\uC774\uC5D0\uC694.\n * @param options.query.contains - \uC774\uB984\uC5D0 \uD2B9\uC815 \uBB38\uC790\uC5F4\uC774 \uD3EC\uD568\uB41C \uC5F0\uB77D\uCC98\uB9CC \uAC00\uC838\uC624\uACE0 \uC2F6\uC744 \uB54C \uC0AC\uC6A9\uD574\uC694. \uC774 \uAC12\uC744 \uC804\uB2EC\uD558\uC9C0 \uC54A\uC73C\uBA74 \uBAA8\uB4E0 \uC5F0\uB77D\uCC98\uB97C \uAC00\uC838\uC640\uC694.\n * @returns {Promise<ContactResult>}\n * \uC5F0\uB77D\uCC98 \uBAA9\uB85D\uACFC \uD398\uC774\uC9C0\uB124\uC774\uC158 \uC815\uBCF4\uB97C \uD3EC\uD568\uD55C \uAC1D\uCCB4\uB97C \uBC18\uD658\uD574\uC694.\n * - `result`: \uAC00\uC838\uC628 \uC5F0\uB77D\uCC98 \uBAA9\uB85D\uC774\uC5D0\uC694.\n * - `nextOffset`: \uB2E4\uC74C \uD638\uCD9C\uC5D0 \uC0AC\uC6A9\uD560 \uC624\uD504\uC14B \uAC12\uC774\uC5D0\uC694. \uB354 \uAC00\uC838\uC62C \uC5F0\uB77D\uCC98\uAC00 \uC5C6\uC73C\uBA74 `null`\uC774\uC5D0\uC694.\n * - `done`: \uBAA8\uB4E0 \uC5F0\uB77D\uCC98\uB97C \uB2E4 \uAC00\uC838\uC654\uB294\uC9C0 \uC5EC\uBD80\uB97C \uB098\uD0C0\uB0B4\uC694. \uBAA8\uB450 \uAC00\uC838\uC654\uB2E4\uBA74 `true`\uC608\uC694.\n *\n * @signature\n * ```typescript\n * function fetchContacts(options: {\n * size: number;\n * offset: number;\n * query?: {\n * contains?: string;\n * };\n * }): Promise<ContactResult>;\n * ```\n *\n * @example\n * ### \uD2B9\uC815 \uBB38\uC790\uC5F4\uC774 \uD3EC\uD568\uB41C \uC5F0\uB77D\uCC98 \uBAA9\uB85D \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import React, { useState } from 'react';\n * import { View, Text, Button } from 'react-native';\n * import { fetchContacts, ContactEntity } from '@apps-in-toss/framework';\n *\n * // \uD2B9\uC815 \uBB38\uC790\uC5F4\uC744 \uD3EC\uD568\uD55C \uC5F0\uB77D\uCC98 \uBAA9\uB85D\uC744 \uAC00\uC838\uC640 \uD654\uBA74\uC5D0 \uD45C\uC2DC\uD558\uB294 \uCEF4\uD3EC\uB10C\uD2B8\n * function ContactsList() {\n * const [contacts, setContacts] = useState<{\n * result: ContactEntity[];\n * nextOffset: number | null;\n * done: boolean;\n * }>({\n * result: [],\n * nextOffset: null,\n * done: false,\n * });\n *\n * const handlePress = async () => {\n * try {\n * if (contacts.done) {\n * console.log('\uBAA8\uB4E0 \uC5F0\uB77D\uCC98\uB97C \uAC00\uC838\uC654\uC5B4\uC694.');\n * return;\n * }\n *\n * const response = await fetchContacts({\n * size: 10,\n * offset: contacts.nextOffset ?? 0,\n * query: { contains: '\uAE40' },\n * });\n * setContacts((prev) => ({\n * result: [...prev.result, ...response.result],\n * nextOffset: response.nextOffset,\n * done: response.done,\n * }));\n * } catch (error) {\n * console.error('\uC5F0\uB77D\uCC98\uB97C \uAC00\uC838\uC624\uB294 \uB370 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * return (\n * <View>\n * {contacts.result.map((contact, index) => (\n * <Text key={index}>{contact.name}: {contact.phoneNumber}</Text>\n * ))}\n * <Button\n * title={contacts.done ? '\uBAA8\uB4E0 \uC5F0\uB77D\uCC98\uB97C \uAC00\uC838\uC654\uC5B4\uC694.' : '\uB2E4\uC74C \uC5F0\uB77D\uCC98 \uAC00\uC838\uC624\uAE30'}\n * disabled={contacts.done}\n * onPress={handlePress}\n * />\n * </View>\n * );\n * }\n * ```\n */\nexport declare function fetchContacts(options: {\n size: number;\n offset: number;\n query?: {\n contains?: string;\n };\n}): Promise<ContactResult>;\n\nexport {};\n"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
identifier: "fetchAlbumPhotos",
|
|
49
|
+
dts: "/**\n * \uC0AC\uC9C4 \uC870\uD68C \uACB0\uACFC\uB97C \uB098\uD0C0\uB0B4\uB294 \uD0C0\uC785\uC774\uC5D0\uC694.\n */\nexport interface ImageResponse {\n /** \uAC00\uC838\uC628 \uC0AC\uC9C4\uC758 \uACE0\uC720 ID\uC608\uC694. */\n id: string;\n /** \uC0AC\uC9C4\uC758 \uB370\uC774\uD130 URI\uC608\uC694. `base64` \uC635\uC158\uC774 `true`\uC778 \uACBD\uC6B0 Base64 \uBB38\uC790\uC5F4\uB85C \uBC18\uD658\uB3FC\uC694. */\n dataUri: string;\n}\n/**\n * \uC568\uBC94 \uC0AC\uC9C4\uC744 \uC870\uD68C\uD560 \uB54C \uC0AC\uC6A9\uD558\uB294 \uC635\uC158 \uD0C0\uC785\uC774\uC5D0\uC694.\n */\nexport interface FetchAlbumPhotosOptions {\n /** \uAC00\uC838\uC62C \uC0AC\uC9C4\uC758 \uCD5C\uB300 \uAC1C\uC218\uB97C \uC124\uC815\uD574\uC694. \uC22B\uC790\uB97C \uC785\uB825\uD558\uACE0 \uAE30\uBCF8\uAC12\uC740 10\uC774\uC5D0\uC694. */\n maxCount?: number;\n /** \uC0AC\uC9C4\uC758 \uCD5C\uB300 \uD3ED\uC744 \uC81C\uD55C\uD574\uC694. \uB2E8\uC704\uB294 \uD53D\uC140\uC774\uACE0 \uAE30\uBCF8\uAC12\uC740 1024\uC774\uC5D0\uC694. */\n maxWidth?: number;\n /** \uC774\uBBF8\uC9C0\uB97C base64 \uD615\uC2DD\uC73C\uB85C \uBC18\uD658\uD560\uC9C0 \uC124\uC815\uD574\uC694. \uAE30\uBCF8\uAC12\uC740 `false`\uC608\uC694. */\n base64?: boolean;\n}\n/**\n * @public\n * @category \uC0AC\uC9C4\n * @name fetchAlbumPhotos\n * @description\n * \uC0AC\uC6A9\uC790\uC758 \uC568\uBC94\uC5D0\uC11C \uC0AC\uC9C4 \uBAA9\uB85D\uC744 \uBD88\uB7EC\uC624\uB294 \uD568\uC218\uC608\uC694.\n * \uCD5C\uB300 \uAC1C\uC218\uC640 \uD574\uC0C1\uB3C4\uB97C \uC124\uC815\uD560 \uC218 \uC788\uACE0 \uAC24\uB7EC\uB9AC \uBBF8\uB9AC\uBCF4\uAE30, \uC774\uBBF8\uC9C0 \uC120\uD0DD \uAE30\uB2A5 \uB4F1\uC5D0 \uD65C\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @param options - \uC870\uD68C \uC635\uC158\uC744 \uB2F4\uC740 \uAC1D\uCCB4\uC608\uC694.\n * @param {number} [options.maxCount=10] \uAC00\uC838\uC62C \uC0AC\uC9C4\uC758 \uCD5C\uB300 \uAC1C\uC218\uB97C \uC124\uC815\uD574\uC694. \uC22B\uC790\uB85C \uC785\uB825\uD558\uBA70 \uAE30\uBCF8\uAC12\uC740 10\uC774\uC5D0\uC694.\n * @param {number} [options.maxWidth=1024] \uC0AC\uC9C4\uC758 \uCD5C\uB300 \uD3ED\uC744 \uC81C\uD55C\uD574\uC694. \uB2E8\uC704\uB294 \uD53D\uC140\uC774\uBA70 \uAE30\uBCF8\uAC12\uC740 `1024`\uC774\uC5D0\uC694.\n * @param {boolean} [options.base64=false] \uC774\uBBF8\uC9C0\uB97C base64 \uD615\uC2DD\uC73C\uB85C \uBC18\uD658\uD560\uC9C0 \uC124\uC815\uD574\uC694. \uAE30\uBCF8\uAC12\uC740 `false`\uC608\uC694.\n * @returns {Promise<ImageResponse[]>}\n * \uC568\uBC94 \uC0AC\uC9C4\uC758 \uACE0\uC720 ID\uC640 \uB370\uC774\uD130 URI\uB97C \uD3EC\uD568\uD55C \uBC30\uC5F4\uC744 \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uC0AC\uC9C4\uC758 \uCD5C\uB300 \uD3ED\uC744 360px\uB85C \uC81C\uD55C\uD558\uC5EC \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import React, { useState } from 'react';\n * import { View, Image, Button } from 'react-native';\n * import { fetchAlbumPhotos } from '@apps-in-toss/framework';\n *\n * const base64 = true;\n *\n * // \uC568\uBC94 \uC0AC\uC9C4 \uBAA9\uB85D\uC744 \uAC00\uC838\uC640 \uD654\uBA74\uC5D0 \uD45C\uC2DC\uD558\uB294 \uCEF4\uD3EC\uB10C\uD2B8\n * function AlbumPhotoList() {\n * const [albumPhotos, setAlbumPhotos] = useState([]);\n *\n * const handlePress = async () => {\n * try {\n * const response = await fetchAlbumPhotos({\n * base64,\n * maxWidth: 360,\n * });\n * setAlbumPhotos((prev) => ([...prev, ...response]));\n * } catch (error) {\n * console.error('\uC568\uBC94\uC744 \uAC00\uC838\uC624\uB294 \uB370 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * return (\n * <View>\n * {albumPhotos.map((image) => {\n * // base64 \uD615\uC2DD\uC73C\uB85C \uBC18\uD658\uB41C \uC774\uBBF8\uC9C0\uB97C \uD45C\uC2DC\uD558\uB824\uBA74 \uB370\uC774\uD130 URL \uC2A4\uD0A4\uB9C8 Prefix\uB97C \uBD99\uC5EC\uC57C\uD574\uC694.\n * const imageUri = base64 ? 'data:image/jpeg;base64,' + image.dataUri : image.dataUri;\n *\n * return <Image source={{ uri: imageUri }} key={image.id} />;\n * })}\n * <Button title=\"\uC568\uBC94 \uAC00\uC838\uC624\uAE30\" onPress={handlePress} />\n * </View>\n * );\n * }\n * ```\n */\nexport declare function fetchAlbumPhotos(options: FetchAlbumPhotosOptions): Promise<ImageResponse[]>;\n\nexport {};\n"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
identifier: "getCurrentLocation",
|
|
53
|
+
dts: "/**\n * @public\n * @category \uC704\uCE58 \uC815\uBCF4\n * @name Accuracy\n * @description \uC704\uCE58 \uC815\uD655\uB3C4 \uC635\uC158\uC774\uC5D0\uC694.\n */\nexport declare enum Accuracy {\n /**\n * \uC624\uCC28\uBC94\uC704 3KM \uC774\uB0B4\n */\n Lowest = 1,\n /**\n * \uC624\uCC28\uBC94\uC704 1KM \uC774\uB0B4\n */\n Low = 2,\n /**\n * \uC624\uCC28\uBC94\uC704 \uBA87 \uBC31\uBBF8\uD130 \uC774\uB0B4\n */\n Balanced = 3,\n /**\n * \uC624\uCC28\uBC94\uC704 10M \uC774\uB0B4\n */\n High = 4,\n /**\n * \uAC00\uC7A5 \uB192\uC740 \uC815\uD655\uB3C4\n */\n Highest = 5,\n /**\n * \uB124\uBE44\uAC8C\uC774\uC158\uC744 \uC704\uD55C \uCD5C\uACE0 \uC815\uD655\uB3C4\n */\n BestForNavigation = 6\n}\ninterface Location$1 {\n /**\n * Android\uC5D0\uC11C\uB9CC \uC9C0\uC6D0\uD558\uB294 \uC635\uC158\uC774\uC5D0\uC694.\n *\n * - `FINE`: \uC815\uD655\uD55C \uC704\uCE58\n * - `COARSE`: \uB300\uB7B5\uC801\uC778 \uC704\uCE58\n *\n * @see https://developer.android.com/codelabs/approximate-location\n */\n accessLocation?: \"FINE\" | \"COARSE\";\n /**\n * \uC704\uCE58\uAC00 \uC5C5\uB370\uC774\uD2B8\uB41C \uC2DC\uC810\uC758 \uC720\uB2C9\uC2A4 \uD0C0\uC784\uC2A4\uD0EC\uD504\uC608\uC694.\n */\n timestamp: number;\n /**\n * @description \uC704\uCE58 \uC815\uBCF4\uB97C \uB098\uD0C0\uB0B4\uB294 \uAC1D\uCCB4\uC608\uC694. \uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [LocationCoords](/react-native/reference/framework/Types/LocationCoords.html)\uC744 \uCC38\uACE0\uD574\uC8FC\uC138\uC694.\n */\n coords: LocationCoords;\n}\n/**\n * @public\n * @category \uC704\uCE58 \uC815\uBCF4\n * @name LocationCoords\n * @description \uC138\uBD80 \uC704\uCE58 \uC815\uBCF4\uB97C \uB098\uD0C0\uB0B4\uB294 \uAC1D\uCCB4\uC608\uC694.\n */\nexport interface LocationCoords {\n /**\n * \uC704\uB3C4\n */\n latitude: number;\n /**\n * \uACBD\uB3C4\n */\n longitude: number;\n /**\n * \uB192\uC774\n */\n altitude: number;\n /**\n * \uC704\uCE58 \uC815\uD655\uB3C4\n */\n accuracy: number;\n /**\n * \uACE0\uB3C4 \uC815\uD655\uB3C4\n */\n altitudeAccuracy: number;\n /**\n * \uBC29\uD5A5\n */\n heading: number;\n}\nexport interface GetCurrentLocationOptions {\n /**\n * \uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC62C \uC815\uD655\uB3C4 \uC218\uC900\uC774\uC5D0\uC694.\n */\n accuracy: Accuracy;\n}\n/**\n * @public\n * @category \uC704\uCE58 \uC815\uBCF4\n * @name getCurrentLocation\n * @description \uB514\uBC14\uC774\uC2A4\uC758 \uD604\uC7AC \uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC624\uB294 \uD568\uC218\uC608\uC694.\n * \uC704\uCE58 \uAE30\uBC18 \uC11C\uBE44\uC2A4\uB97C \uAD6C\uD604\uD560 \uB54C \uC0AC\uC6A9\uB418\uACE0, \uD55C \uBC88\uB9CC \uD638\uCD9C\uB418\uC5B4 \uD604\uC7AC \uC704\uCE58\uB97C \uC989\uC2DC \uBC18\uD658\uD574\uC694.\n * \uC608\uB97C \uB4E4\uC5B4 \uC9C0\uB3C4 \uC571\uC5D0\uC11C \uC0AC\uC6A9\uC790\uC758 \uD604\uC7AC \uC704\uCE58\uB97C \uD55C \uBC88\uB9CC \uAC00\uC838\uC62C \uB54C, \uB0A0\uC528 \uC571\uC5D0\uC11C \uC0AC\uC6A9\uC790\uC758 \uC704\uCE58\uB97C \uAE30\uBC18\uC73C\uB85C \uAE30\uC0C1 \uC815\uBCF4\uB97C \uC81C\uACF5\uD560 \uB54C, \uB9E4\uC7A5 \uCC3E\uAE30 \uAE30\uB2A5\uC5D0\uC11C \uC0AC\uC6A9\uC790\uC758 \uC704\uCE58\uB97C \uAE30\uC900\uC73C\uB85C \uAC00\uAE4C\uC6B4 \uB9E4\uC7A5\uC744 \uAC80\uC0C9\uD560 \uB54C \uC0AC\uC6A9\uD558\uBA74 \uC720\uC6A9\uD574\uC694.\n *\n * @param {GetCurrentLocationOptions} options \uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC62C \uB54C \uC0AC\uC6A9\uD558\uB294 \uC635\uC158 \uAC1D\uCCB4\uC608\uC694.\n * @param {Accuracy} [options.accuracy] \uC704\uCE58 \uC815\uBCF4\uC758 \uC815\uD655\uB3C4 \uC218\uC900\uC774\uC5D0\uC694. \uC815\uD655\uB3C4\uB294 `Accuracy` \uD0C0\uC785\uC73C\uB85C \uC124\uC815\uB3FC\uC694.\n * @returns {Promise<Location>} \uB514\uBC14\uC774\uC2A4\uC758 \uC704\uCE58 \uC815\uBCF4\uAC00 \uB2F4\uAE34 \uAC1D\uCCB4\uB97C \uBC18\uD658\uD574\uC694. \uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [Location](/react-native/reference/framework/Types/Location.html)\uC744 \uCC38\uACE0\uD574\uC8FC\uC138\uC694.\n *\n * @example\n * ### \uB514\uBC14\uC774\uC2A4\uC758 \uD604\uC7AC \uC704\uCE58 \uC815\uBCF4 \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import React, { useState } from 'react';\n * import { View, Text, Button } from 'react-native';\n * import { getCurrentLocation } from '@apps-in-toss/framework';\n *\n * // \uD604\uC7AC \uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC640 \uD654\uBA74\uC5D0 \uD45C\uC2DC\uD558\uB294 \uCEF4\uD3EC\uB10C\uD2B8\n * function CurrentPosition() {\n * const [position, setPosition] = useState(null);\n *\n * const handlePress = async () => {\n * try {\n * const response = await getCurrentLocation({ accuracy: Accuracy.Balanced });\n * setPosition(response);\n * } catch (error) {\n * console.error('\uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC624\uB294 \uB370 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * return (\n * <View>\n * {position ? (\n * <Text>\uC704\uCE58: {position.coords.latitude}, {position.coords.longitude}</Text>\n * ) : (\n * <Text>\uC704\uCE58 \uC815\uBCF4\uB97C \uC544\uC9C1 \uAC00\uC838\uC624\uC9C0 \uC54A\uC558\uC5B4\uC694</Text>\n * )}\n * <Button title=\"\uD604\uC7AC \uC704\uCE58 \uC815\uBCF4 \uAC00\uC838\uC624\uAE30\" onPress={handlePress} />\n * </View>\n * );\n * }\n * ```\n */\nexport declare function getCurrentLocation(options: GetCurrentLocationOptions): Promise<Location$1>;\n\nexport {};\n"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
identifier: "openCamera",
|
|
57
|
+
dts: "/**\n * \uC0AC\uC9C4 \uC870\uD68C \uACB0\uACFC\uB97C \uB098\uD0C0\uB0B4\uB294 \uD0C0\uC785\uC774\uC5D0\uC694.\n */\nexport interface ImageResponse {\n /** \uAC00\uC838\uC628 \uC0AC\uC9C4\uC758 \uACE0\uC720 ID\uC608\uC694. */\n id: string;\n /** \uC0AC\uC9C4\uC758 \uB370\uC774\uD130 URI\uC608\uC694. `base64` \uC635\uC158\uC774 `true`\uC778 \uACBD\uC6B0 Base64 \uBB38\uC790\uC5F4\uB85C \uBC18\uD658\uB3FC\uC694. */\n dataUri: string;\n}\nexport interface OpenCameraOptions {\n /**\n * \uC774\uBBF8\uC9C0\uB97C Base64 \uD615\uC2DD\uC73C\uB85C \uBC18\uD658\uD560\uC9C0 \uC5EC\uBD80\uB97C \uB098\uD0C0\uB0B4\uB294 \uBD88\uB9AC\uC5B8 \uAC12\uC774\uC5D0\uC694.\n *\n * \uAE30\uBCF8\uAC12: `false`.\n */\n base64?: boolean;\n /**\n * \uC774\uBBF8\uC9C0\uC758 \uCD5C\uB300 \uB108\uBE44\uB97C \uB098\uD0C0\uB0B4\uB294 \uC22B\uC790 \uAC12\uC774\uC5D0\uC694.\n *\n * \uAE30\uBCF8\uAC12: `1024`.\n */\n maxWidth?: number;\n}\n/**\n * @public\n * @category \uCE74\uBA54\uB77C\n * @name openCamera\n * @description \uCE74\uBA54\uB77C\uB97C \uC2E4\uD589\uD574\uC11C \uCD2C\uC601\uB41C \uC774\uBBF8\uC9C0\uB97C \uBC18\uD658\uD558\uB294 \uD568\uC218\uC608\uC694.\n * @param {OpenCameraOptions} options - \uCE74\uBA54\uB77C \uC2E4\uD589 \uC2DC \uC0AC\uC6A9\uB418\uB294 \uC635\uC158 \uAC1D\uCCB4\uC608\uC694.\n * @param {boolean} [options.base64=false] - \uC774\uBBF8\uC9C0\uB97C Base64 \uD615\uC2DD\uC73C\uB85C \uBC18\uD658\uD560\uC9C0 \uC5EC\uBD80\uB97C \uB098\uD0C0\uB0B4\uB294 \uBD88\uB9AC\uC5B8 \uAC12\uC774\uC5D0\uC694. \uAE30\uBCF8\uAC12\uC740 `false`\uC608\uC694. `true`\uB85C \uC124\uC815\uD558\uBA74 `dataUri` \uB300\uC2E0 Base64 \uC778\uCF54\uB529\uB41C \uBB38\uC790\uC5F4\uC744 \uBC18\uD658\uD574\uC694.\n * @param {number} [options.maxWidth=1024] - \uC774\uBBF8\uC9C0\uC758 \uCD5C\uB300 \uB108\uBE44\uB97C \uB098\uD0C0\uB0B4\uB294 \uC22B\uC790 \uAC12\uC774\uC5D0\uC694. \uAE30\uBCF8\uAC12\uC740 `1024`\uC608\uC694.\n * @returns {Promise<ImageResponse>}\n * \uCD2C\uC601\uB41C \uC774\uBBF8\uC9C0 \uC815\uBCF4\uB97C \uD3EC\uD568\uD55C \uAC1D\uCCB4\uB97C \uBC18\uD658\uD574\uC694. \uBC18\uD658 \uAC1D\uCCB4\uC758 \uAD6C\uC131\uC740 \uB2E4\uC74C\uACFC \uAC19\uC544\uC694:\n * - `id`: \uC774\uBBF8\uC9C0\uC758 \uACE0\uC720 \uC2DD\uBCC4\uC790\uC608\uC694.\n * - `dataUri`: \uC774\uBBF8\uC9C0 \uB370\uC774\uD130\uB97C \uD45C\uD604\uD558\uB294 \uB370\uC774\uD130 URI\uC608\uC694.\n *\n * @example\n * ### \uCE74\uBA54\uB77C \uC2E4\uD589 \uD6C4 \uCD2C\uC601\uB41C \uC0AC\uC9C4 \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import React, { useState } from 'react';\n * import { View, Text, Button, Image } from 'react-native';\n * import { openCamera } from '@apps-in-toss/framework';\n *\n * const base64 = true;\n *\n * // \uCE74\uBA54\uB77C\uB97C \uC2E4\uD589\uD558\uACE0 \uCD2C\uC601\uB41C \uC774\uBBF8\uC9C0\uB97C \uD654\uBA74\uC5D0 \uD45C\uC2DC\uD558\uB294 \uCEF4\uD3EC\uB10C\uD2B8\n * function Camera() {\n * const [image, setImage] = useState(null);\n *\n * const handlePress = async () => {\n * try {\n * const response = await openCamera({ base64 });\n * setImage(response);\n * } catch (error) {\n * console.error('\uC0AC\uC9C4\uC744 \uAC00\uC838\uC624\uB294 \uB370 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * // base64 \uD615\uC2DD\uC73C\uB85C \uBC18\uD658\uB41C \uC774\uBBF8\uC9C0\uB97C \uD45C\uC2DC\uD558\uB824\uBA74 \uB370\uC774\uD130 URL \uC2A4\uD0A4\uB9C8 Prefix\uB97C \uBD99\uC5EC\uC57C\uD574\uC694.\n * const imageUri = base64 ? 'data:image/jpeg;base64,' + image.dataUri : image.dataUri;\n *\n * return (\n * <View>\n * {image ? (\n * <Image source={{ uri: imageUri }} style={{ width: 200, height: 200 }} />\n * ) : (\n * <Text>\uC0AC\uC9C4\uC774 \uC5C6\uC5B4\uC694</Text>\n * )}\n * <Button title=\"\uC0AC\uC9C4 \uCD2C\uC601\uD558\uAE30\" onPress={handlePress} />\n * </View>\n * );\n * }\n * ```\n */\nexport declare function openCamera(options?: OpenCameraOptions): Promise<ImageResponse>;\n\nexport {};\n"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
identifier: "appLogin",
|
|
61
|
+
dts: '/**\n * @public\n * @category \uB85C\uADF8\uC778\n * @name appLogin\n * @description \uD1A0\uC2A4 \uC778\uC99D\uC73C\uB85C \uB85C\uADF8\uC778\uD574\uC694. \uB85C\uADF8\uC778\uC774 \uC644\uB8CC\uB418\uBA74 \uB2E4\uC2DC \uD1A0\uC2A4 \uC571\uC73C\uB85C \uC774\uB3D9\uD574\uC694.\n * @example\n *\n * ### \uD1A0\uC2A4 \uC778\uC99D\uC744 \uD1B5\uD574 \uB85C\uADF8\uC778\uC744 \uD558\uB294 \uC608\uC81C\n *\n * ```tsx\n * import { Button } from \'react-native\';\n * import { appLogin } from \'@apps-in-toss/framework\';\n *\n * function Page() {\n * const handleLogin = async () => {\n * const { authorizationCode, referrer } = await appLogin();\n *\n * // \uD68D\uB4DD\uD55C \uC778\uAC00 \uCF54\uB4DC(`authorizationCode`)\uC640 `referrer`\uB97C \uC11C\uBC84\uB85C \uC804\uB2EC\uD574\uC694.\n * }\n *\n * return <Button title="\uB85C\uADF8\uC778" onPress={handleLogin} />;\n * }\n * ```\n */\nexport declare function appLogin(): Promise<{\n authorizationCode: string;\n referrer: "DEFAULT" | "SANDBOX";\n}>;\n\nexport {};\n'
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
identifier: "eventLog",
|
|
65
|
+
dts: `export type Primitive = string | number | boolean | null | undefined | symbol;
|
|
66
|
+
export interface EventLogParams {
|
|
67
|
+
log_name: string;
|
|
68
|
+
log_type: "debug" | "info" | "warn" | "error" | "screen" | "impression" | "click";
|
|
69
|
+
params: Record<string, Primitive>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* @category \uB85C\uAE45
|
|
73
|
+
* @kind function
|
|
74
|
+
* @name eventLog
|
|
75
|
+
* @description
|
|
76
|
+
* \uC774\uBCA4\uD2B8 \uB85C\uADF8\uB97C \uAE30\uB85D\uD558\uB294 \uD568\uC218\uC608\uC694.
|
|
77
|
+
*
|
|
78
|
+
* \uC774 \uD568\uC218\uB294 \uC571 \uB0B4\uC5D0\uC11C \uBC1C\uC0DD\uD558\uB294 \uB2E4\uC591\uD55C \uC774\uBCA4\uD2B8\uB97C \uB85C\uAE45\uD558\uB294 \uB370 \uC0AC\uC6A9\uB3FC\uC694. \uB514\uBC84\uAE45, \uC815\uBCF4 \uC81C\uACF5, \uACBD\uACE0, \uC624\uB958 \uB4F1 \uB2E4\uC591\uD55C \uC720\uD615\uC758 \uB85C\uADF8\uB97C \uAE30\uB85D\uD560 \uC218 \uC788\uC5B4\uC694. \uC0CC\uB4DC\uBC15\uC2A4 \uD658\uACBD\uC5D0\uC11C\uB294 \uCF58\uC194\uC5D0 \uB85C\uADF8\uAC00 \uCD9C\uB825\uB418\uACE0, \uC2E4\uC81C \uD658\uACBD\uC5D0\uC11C\uB294 \uB85C\uADF8 \uC2DC\uC2A4\uD15C\uC5D0 \uAE30\uB85D\uB3FC\uC694.
|
|
79
|
+
*
|
|
80
|
+
* @param {Object} params \uB85C\uADF8 \uAE30\uB85D\uC5D0 \uD544\uC694\uD55C \uB9E4\uAC1C\uBCC0\uC218 \uAC1D\uCCB4\uC608\uC694.
|
|
81
|
+
* @param {string} params.log_name \uB85C\uADF8\uC758 \uC774\uB984\uC774\uC5D0\uC694.
|
|
82
|
+
* @param {'debug' | 'info' | 'warn' | 'error' | 'screen' | 'impression' | 'click'} params.log_type \uB85C\uADF8\uC758 \uC720\uD615\uC774\uC5D0\uC694.
|
|
83
|
+
* @param {Record<string, Primitive>} params.params \uB85C\uADF8\uC5D0 \uD3EC\uD568\uD560 \uCD94\uAC00 \uB9E4\uAC1C\uBCC0\uC218 \uAC1D\uCCB4\uC608\uC694.
|
|
84
|
+
*
|
|
85
|
+
* @returns {Promise<void>} \uB85C\uADF8 \uAE30\uB85D\uC774 \uC644\uB8CC\uB418\uBA74 \uD574\uACB0\uB418\uB294 Promise\uC608\uC694.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ### \uC774\uBCA4\uD2B8 \uB85C\uADF8 \uAE30\uB85D\uD558\uAE30
|
|
89
|
+
*
|
|
90
|
+
* \`\`\`tsx
|
|
91
|
+
* import { eventLog } from '@apps-in-toss/framework';
|
|
92
|
+
*
|
|
93
|
+
* function logUserAction() {
|
|
94
|
+
* eventLog({
|
|
95
|
+
* log_name: 'user_action',
|
|
96
|
+
* log_type: 'info',
|
|
97
|
+
* params: {
|
|
98
|
+
* action: 'button_click',
|
|
99
|
+
* screen: 'main',
|
|
100
|
+
* userId: 12345
|
|
101
|
+
* }
|
|
102
|
+
* });
|
|
103
|
+
* }
|
|
104
|
+
* \`\`\`
|
|
105
|
+
*/
|
|
106
|
+
export declare function eventLog(params: EventLogParams): Promise<void>;
|
|
107
|
+
|
|
108
|
+
export {};
|
|
109
|
+
`
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
identifier: "getTossShareLink",
|
|
113
|
+
dts: "/**\n * @public\n * @category \uACF5\uC720\n * @kind function\n * @name getTossShareLink\n * @description\n * `getTossShareLink` \uD568\uC218\uB294 \uC0AC\uC6A9\uC790\uAC00 \uC9C0\uC815\uD55C \uACBD\uB85C\uB97C \uD1A0\uC2A4 \uC571\uC5D0\uC11C \uC5F4 \uC218 \uC788\uB294 \uACF5\uC720 \uB9C1\uD06C\uB97C \uBC18\uD658\uD574\uC694.\n * \uC774 \uB9C1\uD06C\uB97C \uB2E4\uB978 \uC0AC\uB78C\uACFC \uACF5\uC720\uD558\uBA74 \uD1A0\uC2A4 \uC571\uC774 \uC2E4\uD589\uB418\uBA74\uC11C \uC9C0\uC815\uD55C \uACBD\uB85C\uB85C \uC9C4\uC785\uD574\uC694. \uD1A0\uC2A4\uC571\uC774 \uC5C6\uB294 \uC0AC\uB78C\uC740 iOS \uC77C \uB54C\uB294 \uC571\uC2A4\uD1A0\uC5B4\uB85C \uC774\uB3D9\uD558\uACE0, Android \uC77C \uB54C\uB294 \uD50C\uB808\uC774\uC2A4\uD1A0\uC5B4\uB85C \uC774\uB3D9\uD574\uC694.\n *\n * \uACBD\uB85C\uB294 \uD1A0\uC2A4 \uC571 \uB0B4\uBD80 \uD2B9\uC815 \uD654\uBA74\uC744 \uB098\uD0C0\uB0B4\uB294 \uB525\uB9C1\uD06C(deep link) \uD615\uC2DD\uC774\uC5B4\uC57C \uD574\uC694.\n * \uC608\uB97C \uB4E4\uC5B4 `intoss://<\uC571 \uC774\uB984>`\uC774\uB098 `intoss://<\uC571 \uC774\uB984>/about?name=test`\uCC98\uB7FC \uC791\uC131\uD574\uC694.\n *\n * \uC774 \uD568\uC218\uB97C \uC0AC\uC6A9\uD558\uBA74 `deep_link_value`\uB97C \uD3EC\uD568\uD55C \uC644\uC131\uB41C \uACF5\uC720 \uB9C1\uD06C\uB97C \uB9CC\uB4E4 \uC218 \uC788\uC5B4\uC694.\n *\n * @param path - \uB525\uB9C1\uD06C\uB85C \uC5F4\uACE0 \uC2F6\uC740 \uACBD\uB85C\uC608\uC694. `intoss://`\uB85C \uC2DC\uC791\uD558\uB294 \uBB38\uC790\uC5F4\uC774\uC5B4\uC57C \uD574\uC694.\n * @returns {Promise<string>} `deep_link_value`\uAC00 \uD3EC\uD568\uB41C \uD1A0\uC2A4 \uACF5\uC720 \uB9C1\uD06C\uB97C \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ```tsx\n * import { share } from '@granite-js/react-native';\n * import { getTossShareLink } from '@apps-in-toss/framework';\n *\n * // '/' \uACBD\uB85C\uB97C \uB525\uB9C1\uD06C\uB85C \uD3EC\uD568\uD55C \uD1A0\uC2A4 \uACF5\uC720 \uB9C1\uD06C\uB97C \uC0DD\uC131\uD574\uC694.\n * const tossLink = await getTossShareLink('intoss://my-app');\n *\n * // \uC0DD\uC131\uD55C \uB9C1\uD06C\uB97C \uBA54\uC2DC\uC9C0\uB85C \uACF5\uC720\uD574\uC694.\n * await share({ message: tossLink });\n * ```\n */\nexport declare function getTossShareLink(path: string): Promise<string>;\n\nexport {};\n"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
identifier: "setDeviceOrientation",
|
|
117
|
+
dts: "/**\n * @public\n * @category \uD654\uBA74 \uC81C\uC5B4\n * @kind function\n * @name setDeviceOrientation\n * @description\n * `setDeviceOrientation` \uD568\uC218\uB294 \uAE30\uAE30\uC758 \uD654\uBA74 \uBC29\uD5A5\uC744 \uC124\uC815\uD558\uB294 \uAE30\uB2A5\uC744 \uC81C\uACF5\uD574\uC694.\n * \uC774 \uAE30\uB2A5\uC740 \uD2B9\uC815 \uD654\uBA74\uC5D0\uC11C \uAC00\uB85C \uBAA8\uB4DC\uB098 \uC138\uB85C \uBAA8\uB4DC\uB97C \uAC15\uC81C\uB85C \uC9C0\uC815\uD574\uC57C \uD560 \uB54C \uC720\uC6A9\uD574\uC694.\n *\n * `type` \uC635\uC158\uC744 \uD1B5\uD574 \uC6D0\uD558\uB294 \uD654\uBA74 \uBC29\uD5A5\uC744 \uC9C0\uC815\uD560 \uC218 \uC788\uC5B4\uC694. \uD2B9\uD788, \uC774 \uD568\uC218\uB294 \uC571 \uC804\uCCB4\uC5D0 \uC601\uD5A5\uC744 \uBBF8\uCE58\uBBC0\uB85C\n * \uD2B9\uC815 \uD654\uBA74\uC5D0\uC11C\uB9CC \uC0AC\uC6A9\uD558\uB824\uBA74 \uD654\uBA74\uC744 \uBC97\uC5B4\uB0A0 \uB54C \uC774\uC804 \uC0C1\uD0DC\uB85C \uBCF5\uAD6C\uD558\uB294 \uCD94\uAC00 \uC791\uC5C5\uC774 \uD544\uC694\uD574\uC694.\n *\n * \uC608\uB97C \uB4E4\uC5B4, \uB3D9\uC601\uC0C1 \uAC10\uC0C1 \uD654\uBA74\uC5D0\uC11C\uB294 \uAC00\uB85C \uBAA8\uB4DC\uB97C \uAC15\uC81C\uD558\uACE0, \uD654\uBA74\uC744 \uB5A0\uB0A0 \uB54C \uC124\uC815\uC744 \uBCF5\uAD6C\uD574\uC11C\n * \uB2E4\uB978 \uD654\uBA74\uB4E4\uC758 \uBC29\uD5A5 \uC124\uC815\uC5D0 \uC601\uD5A5\uC744 \uC8FC\uC9C0 \uC54A\uB3C4\uB85D \uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @param {object} options \uD654\uBA74 \uBC29\uD5A5 \uC124\uC815 \uAC12\uC774\uC5D0\uC694.\n * @param {string} options.type \uD654\uBA74 \uBC29\uD5A5\uC744 \uC9C0\uC815\uD558\uB294 \uC635\uC158\uC774\uC5D0\uC694.\n * 'portrait' | 'landscape' \uC911 \uD558\uB098\uB97C \uC120\uD0DD\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @returns {Promise<void>} \uD654\uBA74 \uBC29\uD5A5 \uC124\uC815\uC774 \uC644\uB8CC\uB418\uBA74 \uD574\uACB0\uB418\uB294 Promise\uB97C \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uD654\uBA74 \uBC29\uD5A5 \uC124\uC815\uD558\uAE30\n *\n * ```tsx\n * import { Button } from 'react-native';\n * import { setDeviceOrientation } from '@apps-in-toss/framework';\n *\n * function SetDeviceOrientation() {\n * return (\n * <Button\n * title=\"\uAC00\uB85C \uBAA8\uB4DC\uB85C \uBCC0\uACBD\"\n * onPress={() => {\n * setDeviceOrientation({ type: 'landscape' });\n * }}\n * />\n * );\n * }\n * ```\n *\n * ### \uD654\uBA74 \uBC29\uD5A5 \uBCF5\uAD6C\uD558\uAE30\n * \uD2B9\uC815 \uD654\uBA74\uC744 \uBC97\uC5B4\uB0A0 \uB54C \uC774\uC804 \uC0C1\uD0DC\uB85C \uBCF5\uAD6C\uD558\uB824\uBA74 \uB2E4\uC74C\uACFC \uAC19\uC774 `useEffect`\uB97C \uC0AC\uC6A9\uD558\uC138\uC694.\n *\n * ```tsx\n * import { useEffect } from 'react';\n * import { setDeviceOrientation } from '@apps-in-toss/framework';\n *\n * function VideoScreen() {\n * useEffect(() => {\n * setDeviceOrientation({ type: 'landscape' });\n *\n * return () => {\n * setDeviceOrientation({ type: 'portrait' }); // \uC124\uC815\uC744 \uC774\uC804 \uC0C1\uD0DC\uB85C \uBCF5\uAD6C\uD574\uC694.\n * };\n * }, []);\n *\n * return <Text>\uB3D9\uC601\uC0C1\uC744 \uAC10\uC0C1\uD558\uB294 \uD654\uBA74</Text>;\n * }\n * ```\n */\nexport declare function setDeviceOrientation(options: {\n type: \"portrait\" | \"landscape\";\n}): Promise<void>;\n\nexport {};\n"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
identifier: "checkoutPayment",
|
|
121
|
+
dts: "/**\n * @public\n * @category \uD1A0\uC2A4\uD398\uC774\n * @name CheckoutPaymentOptions\n * @description \uD1A0\uC2A4\uD398\uC774 \uACB0\uC81C\uCC3D\uC744 \uB744\uC6B8 \uB54C \uD544\uC694\uD55C \uC635\uC158\uC774\uC5D0\uC694.\n * @property {string} payToken \uACB0\uC81C \uD1A0\uD070\uC774\uC5D0\uC694.\n */\nexport interface CheckoutPaymentOptions {\n /**\n * \uACB0\uC81C \uD1A0\uD070\uC774\uC5D0\uC694.\n */\n payToken: string;\n}\n/**\n * @public\n * @category \uD1A0\uC2A4\uD398\uC774\n * @name CheckoutPaymentResult\n * @description \uD1A0\uC2A4\uD398\uC774 \uACB0\uC81C\uCC3D\uC5D0\uC11C \uC0AC\uC6A9\uC790\uAC00 \uC778\uC99D\uC5D0 \uC131\uACF5\uD588\uB294\uC9C0 \uC5EC\uBD80\uC608\uC694.\n * @property {boolean} success \uC778\uC99D\uC774 \uC131\uACF5\uD588\uB294\uC9C0 \uC5EC\uBD80\uC608\uC694.\n * @property {string} [reason] \uC778\uC99D\uC774 \uC2E4\uD328\uD588\uC744 \uACBD\uC6B0\uC758 \uC774\uC720\uC608\uC694.\n */\nexport interface CheckoutPaymentResult {\n /**\n * \uC778\uC99D\uC774 \uC131\uACF5\uD588\uB294\uC9C0 \uC5EC\uBD80\uC608\uC694.\n */\n success: boolean;\n /**\n * \uC778\uC99D\uC774 \uC2E4\uD328\uD588\uC744 \uACBD\uC6B0\uC758 \uC774\uC720\uC608\uC694.\n */\n reason?: string;\n}\n/**\n * @public\n * @category \uD1A0\uC2A4\uD398\uC774\n * @name checkoutPayment\n * @description \uD1A0\uC2A4\uD398\uC774 \uACB0\uC81C\uCC3D\uC744 \uB744\uC6B0\uACE0, \uC0AC\uC6A9\uC790 \uC778\uC99D\uC744 \uC218\uD589\uD574\uC694. \uC778\uC99D\uC774 \uC644\uB8CC\uB418\uBA74 \uC131\uACF5 \uC5EC\uBD80\uB97C \uBC18\uD658\uD574\uC694.\n *\n * \uC774 \uD568\uC218\uB294 \uACB0\uC81C\uCC3D\uC744 \uD1B5\uD574 \uC0AC\uC6A9\uC790 \uC778\uC99D\uB9CC \uD574\uC694. \uC2E4\uC81C \uACB0\uC81C \uCC98\uB9AC\uB294 \uC778\uC99D \uC131\uACF5 \uD6C4 \uC11C\uBC84\uC5D0\uC11C \uBCC4\uB3C4\uB85C \uD574\uC57C \uD574\uC694.\n *\n * @param {CheckoutPaymentOptions} options \uACB0\uC81C\uCC3D\uC744 \uB744\uC6B8 \uB54C \uD544\uC694\uD55C \uC635\uC158\uC774\uC5D0\uC694.\n * @returns {Promise<CheckoutPaymentResult>} \uC778\uC99D \uC131\uACF5 \uC5EC\uBD80\uB97C \uD3EC\uD568\uD55C \uACB0\uACFC\uB97C \uBC18\uD658\uD574\uC694.\n *\n * @example\n *\n * ### \uD1A0\uC2A4\uD398\uC774 \uACB0\uC81C\uCC3D \uB744\uC6B0\uACE0 \uC778\uC99D \uCC98\uB9AC\uD558\uAE30\n *\n * ```tsx\n * import { TossPay } from '@apps-in-toss/framework';\n *\n * async function handlePayment() {\n * try {\n * // \uC2E4\uC81C \uAD6C\uD604 \uC2DC \uACB0\uC81C \uC0DD\uC131 \uC5ED\uD560\uC744 \uD558\uB294 API \uC5D4\uB4DC\uD3EC\uC778\uD2B8\uB85C \uB300\uCCB4\uD574\uC8FC\uC138\uC694.\n * const { payToken } = await fetch('/my-api/payment/create').then(res => res.json());\n *\n * const { success, reason } = await TossPay.checkoutPayment({ payToken });\n *\n * if (success) {\n * // \uC2E4\uC81C \uAD6C\uD604 \uC2DC \uACB0\uC81C\uB97C \uC2E4\uD589\uD558\uB294 API \uC5D4\uB4DC\uD3EC\uC778\uD2B8\uB85C \uB300\uCCB4\uD574\uC8FC\uC138\uC694.\n * await fetch('/my-api/payment/execute', {\n * method: 'POST',\n * body: JSON.stringify({ payToken }),\n * headers: { 'Content-Type': 'application/json' },\n * });\n * } else {\n * console.log('\uC778\uC99D \uC2E4\uD328:', reason);\n * }\n * } catch (error) {\n * console.error('\uACB0\uC81C \uC778\uC99D \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC5B4\uC694:', error);\n * }\n * }\n * ```\n */\nexport declare function checkoutPayment(options: CheckoutPaymentOptions): Promise<CheckoutPaymentResult>;\n\nexport {};\n"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
identifier: "saveBase64Data",
|
|
125
|
+
dts: "export interface SaveBase64DataParams {\n data: string;\n fileName: string;\n mimeType: string;\n}\n/**\n * @public\n * @category \uB370\uC774\uD130\n * @name saveBase64Data\n * @description \uBB38\uC790\uC5F4\uB85C \uC778\uCF54\uB529\uB41C Base64 \uB370\uC774\uD130\uB97C \uC9C0\uC815\uD55C \uD30C\uC77C \uC774\uB984\uACFC MIME \uD0C0\uC785\uC73C\uB85C \uC0AC\uC6A9\uC790 \uAE30\uAE30\uC5D0 \uC800\uC7A5\uD574\uC694. \uC774\uBBF8\uC9C0, \uD14D\uC2A4\uD2B8, PDF \uB4F1 \uB2E4\uC591\uD55C \uD615\uC2DD\uC758 \uB370\uC774\uD130\uB97C \uC800\uC7A5\uD560 \uC218 \uC788\uC5B4\uC694.\n * @param {SaveBase64DataParams} params - \uC800\uC7A5\uD560 \uB370\uC774\uD130\uC640 \uD30C\uC77C \uC815\uBCF4\uB97C \uB2F4\uC740 \uAC1D\uCCB4\uC608\uC694.\n * @param {string} params.data - Base64 \uD615\uC2DD\uC73C\uB85C \uC778\uCF54\uB529\uB41C \uB370\uC774\uD130 \uBB38\uC790\uC5F4\uC774\uC5D0\uC694.\n * @param {string} params.fileName - \uC800\uC7A5\uD560 \uD30C\uC77C \uC774\uB984\uC774\uC5D0\uC694. \uD655\uC7A5\uC790\uB3C4 \uAC19\uC774 \uBD99\uC5EC\uC918\uC57C\uD574\uC694. \uC608\uB97C \uB4E4\uC5B4, 'example.png'\uB85C \uC800\uC7A5\uD560 \uC218 \uC788\uC5B4\uC694.\n * @param {string} params.mimeType - \uC800\uC7A5\uD560 \uD30C\uC77C\uC758 MIME \uD0C0\uC785\uC774\uC5D0\uC694. \uC608\uB97C \uB4E4\uC5B4 'image/png' \uB85C \uC9C0\uC815\uD558\uBA74 \uC774\uBBF8\uC9C0, 'application/pdf'\uB294 PDF \uD30C\uC77C\uC774\uC5D0\uC694. \uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [MIME \uBB38\uC11C](https://developer.mozilla.org/ko/docs/Web/HTTP/Guides/MIME_types)\uB97C \uCC38\uACE0\uD574\uC8FC\uC138\uC694.\n *\n * @example\n * ### Base64 \uC774\uBBF8\uC9C0 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uC790 \uAE30\uAE30\uC5D0 \uC800\uC7A5\uD558\uAE30\n *\n * ```tsx\n * import { Button } from 'react-native';\n * import { saveBase64Data } from '@apps-in-toss/framework';\n *\n * // '\uC800\uC7A5' \uBC84\uD2BC\uC744 \uB204\uB974\uBA74 \uC774\uBBF8\uC9C0\uAC00 \uC0AC\uC6A9\uC790 \uAE30\uAE30\uC5D0 \uC800\uC7A5\uB3FC\uC694.\n * function SaveButton() {\n * const handleSave = async () => {\n * try {\n * await saveBase64Data({\n * data: 'iVBORw0KGgo...',\n * fileName: 'some-photo.png',\n * mimeType: 'image/png',\n * });\n * } catch (error) {\n * console.error('\uB370\uC774\uD130 \uC800\uC7A5\uC5D0 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * }\n * };\n *\n * return <Button title=\"\uC800\uC7A5\" onPress={handleSave} />;\n * }\n * ```\n */\nexport declare function saveBase64Data(params: SaveBase64DataParams): Promise<void>;\n\nexport {};\n"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
identifier: "getLocale",
|
|
129
|
+
dts: "/**\n * @public\n * @category \uC5B8\uC5B4\n * @kind function\n * @name getLocale\n * @description\n * \uC0AC\uC6A9\uC790\uC758 \uB85C\uCF00\uC77C(locale) \uC815\uBCF4\uB97C \uBC18\uD658\uD574\uC694. \uB124\uC774\uD2F0\uBE0C \uBAA8\uB4C8\uC5D0\uC11C \uB85C\uCF00\uC77C \uC815\uBCF4\uB97C \uAC00\uC838\uC62C \uC218 \uC5C6\uC744 \uB54C\uB294 \uAE30\uBCF8\uAC12\uC73C\uB85C 'ko-KR'\uC744 \uBC18\uD658\uD569\uB2C8\uB2E4. \uC571\uC758 \uD604\uC9C0\uD654 \uBC0F \uC5B8\uC5B4 \uC124\uC815\uACFC \uAD00\uB828\uB41C \uAE30\uB2A5\uC744 \uAD6C\uD604\uD560 \uB54C \uC0AC\uC6A9\uD558\uC138\uC694.\n *\n * @returns {string} \uC0AC\uC6A9\uC790\uC758 \uB85C\uCF00\uC77C \uC815\uBCF4\uB97C \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uD604\uC7AC \uC0AC\uC6A9\uC790\uC758 \uB85C\uCF00\uC77C \uC815\uBCF4 \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import { getLocale } from 'react-native-bedrock';\n * import { Text } from 'react-native';\n *\n * function MyPage() {\n * const locale = getLocale();\n *\n * return (\n * <Text>\uC0AC\uC6A9\uC790\uC758 \uB85C\uCF00\uC77C \uC815\uBCF4: {locale}</Text>\n * )\n * }\n *\n * ```\n */\nexport declare function getLocale(): string;\n\nexport {};\n"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
identifier: "getSchemeUri",
|
|
133
|
+
dts: "/**\n * @public\n * @name getSchemeUri\n * @category \uD658\uACBD \uD655\uC778\n * @kind function\n * @description \uCC98\uC74C\uC5D0 \uD654\uBA74\uC5D0 \uC9C4\uC785\uD55C \uC2A4\uD0B4 \uAC12\uC774\uC5D0\uC694. \uD398\uC774\uC9C0 \uC774\uB3D9\uC73C\uB85C \uC778\uD55C URI \uBCC0\uACBD\uC740 \uBC18\uC601\uB418\uC9C0 \uC54A\uC544\uC694.\n * @returns {string} \uCC98\uC74C\uC5D0 \uD654\uBA74\uC5D0 \uC9C4\uC785\uD55C \uC2A4\uD0B4 \uAC12\uC744 \uBC18\uD658\uD574\uC694.\n *\n * @example\n * ### \uCC98\uC74C \uC9C4\uC785\uD55C \uC2A4\uD0B4 \uAC12 \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import { getSchemeUri } from 'react-native-bedrock';\n * import { Text } from 'react-native';\n *\n * function MyPage() {\n * const schemeUri = getSchemeUri();\n *\n * return <Text>\uCC98\uC74C\uC5D0 \uD654\uBA74\uC5D0 \uC9C4\uC785\uD55C \uC2A4\uD0B4 \uAC12: {schemeUri}</Text>\n * }\n * ```\n */\nexport declare function getSchemeUri(): string;\n\nexport {};\n"
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
identifier: "getPlatformOS",
|
|
137
|
+
dts: "/**\n * @public\n * @kind function\n * @category \uD658\uACBD \uD655\uC778\n *\n * @name getPlatformOS\n * @signature\n * ```typescript\n * function getPlatformOS(): 'ios' | 'android';\n * ```\n *\n * @description\n * \uD604\uC7AC \uC2E4\uD589 \uC911\uC778 \uD50C\uB7AB\uD3FC\uC744 \uD655\uC778\uD558\uB294 \uD568\uC218\uC608\uC694.\n * \uC774 \uD568\uC218\uB294 `react-native`\uC758 [`Platform.OS`](https://reactnative.dev/docs/0.72/platform#os) \uAC12\uC744 \uAE30\uBC18\uC73C\uB85C \uB3D9\uC791\uD558\uBA70, `ios` \uB610\uB294 `android` \uC911 \uD558\uB098\uC758 \uBB38\uC790\uC5F4\uC744 \uBC18\uD658\uD574\uC694.\n *\n * @returns {'ios' | 'android'} \uD604\uC7AC \uC2E4\uD589 \uC911\uC778 \uD50C\uB7AB\uD3FC\n *\n * @example\n *\n * ### \uD604\uC7AC \uC2E4\uD589\uC911\uC778 OS \uD50C\uB7AB\uD3FC \uD655\uC778\uD558\uAE30\n *\n * ```tsx\n * import { getPlatformOS } from 'react-native-bedrock';\n * import { Text } 'react-native';\n *\n * function Page() {\n * const platform = getPlatformOS();\n *\n * return <Text>\uD604\uC7AC \uD50C\uB7AB\uD3FC: {platform}</Text>;\n * }\n * ```\n */\nexport declare function getPlatformOS(): \"ios\" | \"android\";\n\nexport {};\n"
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
identifier: "getOperationalEnvironment",
|
|
141
|
+
dts: "/**\n * @public\n * @category \uD658\uACBD \uD655\uC778\n * @kind function\n * @name getOperationalEnvironment\n * @description\n * \uD604\uC7AC \uC2E4\uD589 \uC911\uC778 \uC571\uC758 \uC6B4\uC601 \uD658\uACBD\uC744 \uD655\uC778\uD574\uC694.\n * \uD1A0\uC2A4 \uC571\uC5D0\uC11C \uC2E4\uD589 \uC911\uC774\uB77C\uBA74 `'toss'`, \uC0CC\uB4DC\uBC15\uC2A4 \uD658\uACBD\uC5D0\uC11C \uC2E4\uD589 \uC911\uC774\uB77C\uBA74 `'sandbox'`\uB97C \uBC18\uD658\uD574\uC694.\n *\n * \uC6B4\uC601 \uD658\uACBD\uC740 \uC571\uC774 \uC2E4\uD589\uB418\uB294 \uCEE8\uD14D\uC2A4\uD2B8\uB97C \uC758\uBBF8\uD558\uBA70, \uD2B9\uC815 \uAE30\uB2A5\uC758 \uC0AC\uC6A9 \uAC00\uB2A5 \uC5EC\uBD80\uB97C \uD310\uB2E8\uD558\uB294 \uB370 \uD65C\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694.\n *\n * @returns {'toss' | 'sandbox'}\n * \uD604\uC7AC \uC6B4\uC601 \uD658\uACBD\uC744 \uB098\uD0C0\uB0B4\uB294 \uBB38\uC790\uC5F4\uC774\uC5D0\uC694.\n * - `'toss'`: \uD1A0\uC2A4 \uC571\uC5D0\uC11C \uC2E4\uD589 \uC911\uC774\uC5D0\uC694.\n * - `'sandbox'`: \uC0CC\uB4DC\uBC15\uC2A4 \uD658\uACBD\uC5D0\uC11C \uC2E4\uD589 \uC911\uC774\uC5D0\uC694.\n *\n * @example\n * ### \uD604\uC7AC \uC6B4\uC601 \uD658\uACBD \uD655\uC778\uD558\uAE30\n *\n * ```tsx\n * import { getOperationalEnvironment } from '@apps-in-toss/framework';\n * import { Text } from 'react-native';\n *\n * function EnvironmentInfo() {\n * const environment = getOperationalEnvironment();\n *\n * return (\n * <Text>\uD604\uC7AC \uC6B4\uC601 \uD658\uACBD: {environment}</Text>\n * );\n * }\n * ```\n */\nexport declare function getOperationalEnvironment(): \"toss\" | \"sandbox\";\n\nexport {};\n"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
identifier: "getTossAppVersion",
|
|
145
|
+
dts: "/**\n * @public\n * @category \uD658\uACBD \uD655\uC778\n * @name getTossAppVersion\n * @description \uD1A0\uC2A4 \uC571 \uBC84\uC804\uC744 \uAC00\uC838\uC635\uB2C8\uB2E4. \uC608\uB97C \uB4E4\uC5B4, `5.206.0`\uACFC \uAC19\uC740 \uD615\uD0DC\uB85C \uBC18\uD658\uB3FC\uC694. \uD1A0\uC2A4 \uC571 \uBC84\uC804\uC744 \uB85C\uADF8\uB85C \uB0A8\uAE30\uAC70\uB098, \uD2B9\uC815 \uAE30\uB2A5\uC774 \uD2B9\uC815 \uBC84\uC804 \uC774\uC0C1\uC5D0\uC11C\uB9CC \uC2E4\uD589\uB420 \uB54C \uC0AC\uC6A9\uB3FC\uC694.\n * @signature\n * ```typescript\n * function getTossAppVersion(): string\n * ```\n *\n * @returns {string} \uD1A0\uC2A4 \uC571 \uBC84\uC804\n *\n * @example\n *\n *\n * ### \uD1A0\uC2A4 \uC571 \uBC84\uC804 \uD655\uC778\uD558\uAE30\n *\n * ```tsx\n * import { getTossAppVersion } from '@apps-in-toss/framework';\n * import { Text } from 'react-native';\n *\n * export function TossAppVersionPage() {\n * return (\n * <Text>{getTossAppVersion()}</Text>\n * )\n * }\n * ```\n */\nexport declare function getTossAppVersion(): string;\n\nexport {};\n"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
identifier: "getDeviceId",
|
|
149
|
+
dts: "/**\n * @public\n * @category \uD658\uACBD \uD655\uC778\n * @kind function\n * @name getDeviceId\n * @description\n * \uC0AC\uC6A9 \uC911\uC778 \uAE30\uAE30\uC758 \uACE0\uC720 \uC2DD\uBCC4\uC790\uB97C \uBB38\uC790\uC5F4\uB85C \uBC18\uD658\uD574\uC694.\n *\n * \uC774 \uD568\uC218\uB294 \uD604\uC7AC \uC0AC\uC6A9 \uC911\uC778 \uAE30\uAE30\uC758 \uACE0\uC720 \uC2DD\uBCC4\uC790\uB97C \uBB38\uC790\uC5F4\uB85C \uBC18\uD658\uD574\uC694. \uAE30\uAE30\uBCC4\uB85C \uC124\uC815\uC774\uB098 \uB370\uC774\uD130\uB97C \uC800\uC7A5\uD558\uAC70\uB098 \uC0AC\uC6A9\uC790\uC758 \uAE30\uAE30\uB97C \uC2DD\uBCC4\uD574\uC11C \uB85C\uADF8\uB97C \uAE30\uB85D\uD558\uACE0 \uBD84\uC11D\uD558\uB294 \uB370 \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694. \uAC19\uC740 \uC0AC\uC6A9\uC790\uC758 \uC5EC\uB7EC \uAE30\uAE30\uB97C \uAD6C\uBD84\uD558\uB294 \uB370\uB3C4 \uC720\uC6A9\uD574\uC694.\n *\n * @returns {string} \uAE30\uAE30\uC758 \uACE0\uC720 \uC2DD\uBCC4\uC790\uB97C \uB098\uD0C0\uB0B4\uB294 \uBB38\uC790\uC5F4\uC774\uC5D0\uC694.\n *\n * @example\n * ### \uAE30\uAE30 \uACE0\uC720 \uC2DD\uBCC4\uC790 \uAC00\uC838\uC624\uAE30\n *\n * ```tsx\n * import { getDeviceId } from '@apps-in-toss/framework';\n * import { Text } from 'react-native';\n *\n * function MyPage() {\n * const id = getDeviceId();\n *\n * return (\n * <Text>\uC0AC\uC6A9\uC790\uC758 \uAE30\uAE30 \uACE0\uC720 \uC2DD\uBCC4\uC790: {id}</Text>\n * );\n * }\n * ```\n */\nexport declare function getDeviceId(): string;\n\nexport {};\n"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
identifier: "startUpdateLocation",
|
|
153
|
+
dts: "import { EmitterSubscription } from 'react-native';\n\nexport interface EventEmitterSchema<K extends string, P extends unknown[]> {\n name: K;\n params: P;\n}\ndeclare enum Accuracy {\n /**\n * \uC624\uCC28\uBC94\uC704 3KM \uC774\uB0B4\n */\n Lowest = 1,\n /**\n * \uC624\uCC28\uBC94\uC704 1KM \uC774\uB0B4\n */\n Low = 2,\n /**\n * \uC624\uCC28\uBC94\uC704 \uBA87 \uBC31\uBBF8\uD130 \uC774\uB0B4\n */\n Balanced = 3,\n /**\n * \uC624\uCC28\uBC94\uC704 10M \uC774\uB0B4\n */\n High = 4,\n /**\n * \uAC00\uC7A5 \uB192\uC740 \uC815\uD655\uB3C4\n */\n Highest = 5,\n /**\n * \uB124\uBE44\uAC8C\uC774\uC158\uC744 \uC704\uD55C \uCD5C\uACE0 \uC815\uD655\uB3C4\n */\n BestForNavigation = 6\n}\ninterface Location$1 {\n /**\n * Android\uC5D0\uC11C\uB9CC \uC9C0\uC6D0\uD558\uB294 \uC635\uC158\uC774\uC5D0\uC694.\n *\n * - `FINE`: \uC815\uD655\uD55C \uC704\uCE58\n * - `COARSE`: \uB300\uB7B5\uC801\uC778 \uC704\uCE58\n *\n * @see https://developer.android.com/codelabs/approximate-location\n */\n accessLocation?: \"FINE\" | \"COARSE\";\n /**\n * \uC704\uCE58\uAC00 \uC5C5\uB370\uC774\uD2B8\uB41C \uC2DC\uC810\uC758 \uC720\uB2C9\uC2A4 \uD0C0\uC784\uC2A4\uD0EC\uD504\uC608\uC694.\n */\n timestamp: number;\n /**\n * @description \uC704\uCE58 \uC815\uBCF4\uB97C \uB098\uD0C0\uB0B4\uB294 \uAC1D\uCCB4\uC608\uC694. \uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [LocationCoords](/react-native/reference/framework/Types/LocationCoords.html)\uC744 \uCC38\uACE0\uD574\uC8FC\uC138\uC694.\n */\n coords: LocationCoords;\n}\n/**\n * @public\n * @category \uC704\uCE58 \uC815\uBCF4\n * @name LocationCoords\n * @description \uC138\uBD80 \uC704\uCE58 \uC815\uBCF4\uB97C \uB098\uD0C0\uB0B4\uB294 \uAC1D\uCCB4\uC608\uC694.\n */\nexport interface LocationCoords {\n /**\n * \uC704\uB3C4\n */\n latitude: number;\n /**\n * \uACBD\uB3C4\n */\n longitude: number;\n /**\n * \uB192\uC774\n */\n altitude: number;\n /**\n * \uC704\uCE58 \uC815\uD655\uB3C4\n */\n accuracy: number;\n /**\n * \uACE0\uB3C4 \uC815\uD655\uB3C4\n */\n altitudeAccuracy: number;\n /**\n * \uBC29\uD5A5\n */\n heading: number;\n}\nexport interface StartUpdateLocationOptions {\n /**\n * \uC704\uCE58 \uC815\uD655\uB3C4\uB97C \uC124\uC815\uD574\uC694.\n */\n accuracy: Accuracy;\n /**\n * \uC704\uCE58 \uC5C5\uB370\uC774\uD2B8 \uC8FC\uAE30\uB97C \uBC00\uB9AC\uCD08(ms) \uB2E8\uC704\uB85C \uC124\uC815\uD574\uC694.\n */\n timeInterval: number;\n /**\n * \uC704\uCE58 \uBCC0\uACBD \uAC70\uB9AC\uB97C \uBBF8\uD130(m) \uB2E8\uC704\uB85C \uC124\uC815\uD574\uC694.\n */\n distanceInterval: number;\n}\nexport interface StartUpdateLocationSubscription extends EmitterSubscription {\n remove: () => Promise<void>;\n}\n/**\n * @name UpdateLocationEventEmitter\n * @kind typedef\n * @description\n * \uB514\uBC14\uC774\uC2A4\uC758 \uC704\uCE58 \uC815\uBCF4 \uBCC0\uACBD\uC744 \uAC10\uC9C0\uD574\uC694\n */\nexport type UpdateLocationEventEmitter = EventEmitterSchema<\"updateLocation\", [\n Location$1\n]>;\n/**\n * @public\n * @category \uC704\uCE58 \uC815\uBCF4\n * @name startUpdateLocation\n * @description \uB514\uBC14\uC774\uC2A4\uC758 \uC704\uCE58 \uC815\uBCF4\uB97C \uC9C0\uC18D\uC801\uC73C\uB85C \uAC10\uC9C0\uD558\uACE0, \uC704\uCE58\uAC00 \uBCC0\uACBD\uB418\uBA74 \uCF5C\uBC31\uC744 \uC2E4\uD589\uD558\uB294 \uD568\uC218\uC608\uC694. \uCF5C\uBC31 \uD568\uC218\uB97C \uB4F1\uB85D\uD558\uBA74 \uC704\uCE58\uAC00 \uBCC0\uACBD\uB420 \uB54C\uB9C8\uB2E4 \uC790\uB3D9\uC73C\uB85C \uD638\uCD9C\uB3FC\uC694.\n * \uC2E4\uC2DC\uAC04 \uC704\uCE58 \uCD94\uC801\uC774 \uD544\uC694\uD55C \uAE30\uB2A5\uC744 \uAD6C\uD604\uD560 \uB54C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC5B4\uC694. \uC608\uB97C \uB4E4\uC5B4 \uC9C0\uB3C4 \uC571\uC5D0\uC11C \uC0AC\uC6A9\uC790\uC758 \uD604\uC7AC \uC704\uCE58\uB97C \uC2E4\uC2DC\uAC04\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uD560 \uB54C, \uC6B4\uB3D9 \uC571\uC5D0\uC11C \uC0AC\uC6A9\uC790\uC758 \uC774\uB3D9 \uAC70\uB9AC\uB97C \uAE30\uB85D\uD560 \uB54C \uB4F1\uC774\uC5D0\uC694.\n * \uC704\uCE58 \uC5C5\uB370\uC774\uD2B8 \uC8FC\uAE30\uC640 \uC815\uD655\uB3C4\uB97C \uC870\uC815\uD574 \uBC30\uD130\uB9AC \uC18C\uBAA8\uB97C \uCD5C\uC18C\uD654\uD558\uBA74\uC11C\uB3C4 \uD544\uC694\uD55C \uC815\uBCF4\uB97C \uC5BB\uC744 \uC218 \uC788\uC5B4\uC694.\n *\n * @param {StartUpdateLocationOptions} options - \uC704\uCE58 \uC815\uBCF4 \uAC10\uC9C0\uC5D0 \uD544\uC694\uD55C \uC124\uC815 \uAC1D\uCCB4\uC5D0\uC694.\n * @param {number} [options.accuracy] \uC704\uCE58 \uC815\uD655\uB3C4\uB97C \uC124\uC815\uD574\uC694.\n * @param {number} [options.timeInterval] \uC704\uCE58 \uC815\uBCF4\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uB294 \uCD5C\uC18C \uC8FC\uAE30\uB85C, \uB2E8\uC704\uB294 \uBC00\uB9AC\uCD08(ms)\uC608\uC694. \uC774 \uAC12\uC740 \uC704\uCE58 \uC5C5\uB370\uC774\uD2B8\uAC00 \uBC1C\uC0DD\uD558\uB294 \uAC00\uC7A5 \uC9E7\uC740 \uAC04\uACA9\uC744 \uC124\uC815\uD558\uC9C0\uB9CC, \uC2DC\uC2A4\uD15C\uC774\uB098 \uD658\uACBD\uC758 \uC601\uD5A5\uC744 \uBC1B\uC544 \uC9C0\uC815\uD55C \uC8FC\uAE30\uBCF4\uB2E4 \uB354 \uAE34 \uAC04\uACA9\uC73C\uB85C \uC5C5\uB370\uC774\uD2B8\uB420 \uC218 \uC788\uC5B4\uC694.\n * @param {number} [options.distanceInterval] \uC704\uCE58 \uBCC0\uACBD \uAC70\uB9AC\uB97C \uBBF8\uD130(m) \uB2E8\uC704\uB85C \uC124\uC815\uD574\uC694.\n * @param {(location: Location) => void} [options.callback] \uC704\uCE58 \uC815\uBCF4\uAC00 \uBCC0\uACBD\uB420 \uB54C \uD638\uCD9C\uB418\uB294 \uCF5C\uBC31 \uD568\uC218\uC608\uC694. \uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [Location](/react-native/reference/framework/Types/Location.html)\uC744 \uCC38\uACE0\uD574\uC8FC\uC138\uC694.\n *\n * @example\n * ### \uC704\uCE58 \uC815\uBCF4 \uBCC0\uACBD \uAC10\uC9C0\uD558\uAE30\n *\n * ```tsx\n * import React, { useState, useEffect } from 'react';\n * import { View, Text, Button } from 'react-native';\n * import { startUpdateLocation } from '@apps-in-toss/framework';\n *\n * // \uC704\uCE58 \uC815\uBCF4 \uBCC0\uACBD \uAC10\uC9C0\uD558\uAE30\n * function LocationWatcher() {\n * const [location, setLocation] = useState(null);\n *\n * useEffect(() => {\n * return startUpdateLocation({\n * options: {\n * accuracy: Accuracy.Balanced,\n * timeInterval: 3000,\n * distanceInterval: 10,\n * },\n * onEvent: (location) => {\n * setLocation(location);\n * },\n * onError: (error) => {\n * console.error('\uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC624\uB294\uB370 \uC2E4\uD328\uD588\uC5B4\uC694:', error);\n * },\n * });\n * }, []);\n *\n * if (location == null) {\n * return <Text>\uC704\uCE58 \uC815\uBCF4\uB97C \uAC00\uC838\uC624\uB294 \uC911\uC774\uC5D0\uC694...</Text>;\n * }\n *\n * return (\n * <View>\n * <Text>\uC704\uB3C4: {location.coords.latitude}</Text>\n * <Text>\uACBD\uB3C4: {location.coords.longitude}</Text>\n * <Text>\uC704\uCE58 \uC815\uD655\uB3C4: {location.coords.accuracy}m</Text>\n * <Text>\uB192\uC774: {location.coords.altitude}m</Text>\n * <Text>\uACE0\uB3C4 \uC815\uD655\uB3C4: {location.coords.altitudeAccuracy}m</Text>\n * <Text>\uBC29\uD5A5: {location.coords.heading}\xB0</Text>\n * </View>\n * );\n * }\n * ```\n */\nexport declare function startUpdateLocation(eventParams: {\n onEvent: (response: Location$1) => void;\n onError: (error: unknown) => void;\n options: StartUpdateLocationOptions;\n}): () => void;\n\nexport {};\n"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
identifier: "onVisibilityChangedByTransparentServiceWeb",
|
|
157
|
+
dts: `import { EmitterSubscription } from 'react-native';
|
|
158
|
+
|
|
159
|
+
export interface EventEmitterSchema<K extends string, P extends unknown[]> {
|
|
160
|
+
name: K;
|
|
161
|
+
params: P;
|
|
162
|
+
}
|
|
163
|
+
export interface OnVisibilityChangedByTransparentServiceWebSubscription extends EmitterSubscription {
|
|
164
|
+
remove: () => void;
|
|
165
|
+
}
|
|
166
|
+
export type OnVisibilityChangedByTransparentServiceWebEventEmitter = EventEmitterSchema<"visibilityChangedByTransparentServiceWeb", [
|
|
167
|
+
boolean
|
|
168
|
+
]>;
|
|
169
|
+
export declare function onVisibilityChangedByTransparentServiceWeb(eventParams: {
|
|
170
|
+
options: {
|
|
171
|
+
callbackId: string;
|
|
172
|
+
};
|
|
173
|
+
onEvent: (isVisible: boolean) => void;
|
|
174
|
+
onError: (error: unknown) => void;
|
|
175
|
+
}): () => void;
|
|
176
|
+
|
|
177
|
+
export {};
|
|
178
|
+
`
|
|
179
|
+
}
|
|
180
|
+
];
|
|
181
|
+
export {
|
|
182
|
+
bridges_meta_default as default
|
|
183
|
+
};
|