diff --git a/Example/Example.xcodeproj/project.pbxproj b/Example/Example.xcodeproj/project.pbxproj new file mode 100644 index 0000000..8fe62d2 --- /dev/null +++ b/Example/Example.xcodeproj/project.pbxproj @@ -0,0 +1,511 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 56; + objects = { + +/* Begin PBXBuildFile section */ + 1519726529ED89EE00F651F5 /* ExampleApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1519726429ED89EE00F651F5 /* ExampleApp.swift */; }; + 1519726729ED89EE00F651F5 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1519726629ED89EE00F651F5 /* ContentView.swift */; }; + 1519726929ED89EF00F651F5 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1519726829ED89EF00F651F5 /* Assets.xcassets */; }; + 1519726C29ED89EF00F651F5 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1519726B29ED89EF00F651F5 /* Preview Assets.xcassets */; }; + 1519727629ED89EF00F651F5 /* ExampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1519727529ED89EF00F651F5 /* ExampleTests.swift */; }; + 151972A329ED9FB700F651F5 /* Flow.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 151972A229ED9FB700F651F5 /* Flow.xcframework */; }; + 151972A429ED9FB700F651F5 /* Flow.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 151972A229ED9FB700F651F5 /* Flow.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 1519727229ED89EF00F651F5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 1519725929ED89EE00F651F5 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1519726029ED89EE00F651F5; + remoteInfo = Example; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 151972A529ED9FB700F651F5 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 151972A429ED9FB700F651F5 /* Flow.xcframework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1519726129ED89EE00F651F5 /* Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Example.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 1519726429ED89EE00F651F5 /* ExampleApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExampleApp.swift; sourceTree = ""; }; + 1519726629ED89EE00F651F5 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; + 1519726829ED89EF00F651F5 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 1519726B29ED89EF00F651F5 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; + 1519727129ED89EF00F651F5 /* ExampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ExampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 1519727529ED89EF00F651F5 /* ExampleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExampleTests.swift; sourceTree = ""; }; + 1519729029ED8A1C00F651F5 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 151972A229ED9FB700F651F5 /* Flow.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Flow.xcframework; path = ../flow/swiftpackage/Flow.xcframework; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 1519725E29ED89EE00F651F5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 151972A329ED9FB700F651F5 /* Flow.xcframework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1519726E29ED89EF00F651F5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 1519725829ED89EE00F651F5 = { + isa = PBXGroup; + children = ( + 1519729E29ED9F8000F651F5 /* Packages */, + 1519726329ED89EE00F651F5 /* Example */, + 1519727429ED89EF00F651F5 /* ExampleTests */, + 1519726229ED89EE00F651F5 /* Products */, + 1519729129ED8A2300F651F5 /* Frameworks */, + ); + sourceTree = ""; + }; + 1519726229ED89EE00F651F5 /* Products */ = { + isa = PBXGroup; + children = ( + 1519726129ED89EE00F651F5 /* Example.app */, + 1519727129ED89EF00F651F5 /* ExampleTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 1519726329ED89EE00F651F5 /* Example */ = { + isa = PBXGroup; + children = ( + 1519729029ED8A1C00F651F5 /* Info.plist */, + 1519726429ED89EE00F651F5 /* ExampleApp.swift */, + 1519726629ED89EE00F651F5 /* ContentView.swift */, + 1519726829ED89EF00F651F5 /* Assets.xcassets */, + 1519726A29ED89EF00F651F5 /* Preview Content */, + ); + path = Example; + sourceTree = ""; + }; + 1519726A29ED89EF00F651F5 /* Preview Content */ = { + isa = PBXGroup; + children = ( + 1519726B29ED89EF00F651F5 /* Preview Assets.xcassets */, + ); + path = "Preview Content"; + sourceTree = ""; + }; + 1519727429ED89EF00F651F5 /* ExampleTests */ = { + isa = PBXGroup; + children = ( + 1519727529ED89EF00F651F5 /* ExampleTests.swift */, + ); + path = ExampleTests; + sourceTree = ""; + }; + 1519729129ED8A2300F651F5 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 151972A229ED9FB700F651F5 /* Flow.xcframework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 1519729E29ED9F8000F651F5 /* Packages */ = { + isa = PBXGroup; + children = ( + ); + name = Packages; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 1519726029ED89EE00F651F5 /* Example */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1519728529ED89EF00F651F5 /* Build configuration list for PBXNativeTarget "Example" */; + buildPhases = ( + 1519725D29ED89EE00F651F5 /* Sources */, + 1519725E29ED89EE00F651F5 /* Frameworks */, + 1519725F29ED89EE00F651F5 /* Resources */, + 151972A529ED9FB700F651F5 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Example; + packageProductDependencies = ( + ); + productName = Example; + productReference = 1519726129ED89EE00F651F5 /* Example.app */; + productType = "com.apple.product-type.application"; + }; + 1519727029ED89EF00F651F5 /* ExampleTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1519728829ED89EF00F651F5 /* Build configuration list for PBXNativeTarget "ExampleTests" */; + buildPhases = ( + 1519726D29ED89EF00F651F5 /* Sources */, + 1519726E29ED89EF00F651F5 /* Frameworks */, + 1519726F29ED89EF00F651F5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 1519727329ED89EF00F651F5 /* PBXTargetDependency */, + ); + name = ExampleTests; + productName = ExampleTests; + productReference = 1519727129ED89EF00F651F5 /* ExampleTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 1519725929ED89EE00F651F5 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastSwiftUpdateCheck = 1430; + LastUpgradeCheck = 1430; + TargetAttributes = { + 1519726029ED89EE00F651F5 = { + CreatedOnToolsVersion = 14.3; + }; + 1519727029ED89EF00F651F5 = { + CreatedOnToolsVersion = 14.3; + TestTargetID = 1519726029ED89EE00F651F5; + }; + }; + }; + buildConfigurationList = 1519725C29ED89EE00F651F5 /* Build configuration list for PBXProject "Example" */; + compatibilityVersion = "Xcode 14.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 1519725829ED89EE00F651F5; + productRefGroup = 1519726229ED89EE00F651F5 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 1519726029ED89EE00F651F5 /* Example */, + 1519727029ED89EF00F651F5 /* ExampleTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 1519725F29ED89EE00F651F5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1519726C29ED89EF00F651F5 /* Preview Assets.xcassets in Resources */, + 1519726929ED89EF00F651F5 /* Assets.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1519726F29ED89EF00F651F5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 1519725D29ED89EE00F651F5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1519726729ED89EE00F651F5 /* ContentView.swift in Sources */, + 1519726529ED89EE00F651F5 /* ExampleApp.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1519726D29ED89EF00F651F5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1519727629ED89EF00F651F5 /* ExampleTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 1519727329ED89EF00F651F5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 1519726029ED89EE00F651F5 /* Example */; + targetProxy = 1519727229ED89EF00F651F5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 1519728329ED89EF00F651F5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 16.4; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 1519728429ED89EF00F651F5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 16.4; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 1519728629ED89EF00F651F5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_ASSET_PATHS = "\"Example/Preview Content\""; + DEVELOPMENT_TEAM = MGCLCSUVY9; + ENABLE_PREVIEWS = YES; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_FILE = Example/Info.plist; + INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchScreen_Generation = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.dapperlabs.Example; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 1519728729ED89EF00F651F5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_ASSET_PATHS = "\"Example/Preview Content\""; + DEVELOPMENT_TEAM = MGCLCSUVY9; + ENABLE_PREVIEWS = YES; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_FILE = Example/Info.plist; + INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchScreen_Generation = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.dapperlabs.Example; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + 1519728929ED89EF00F651F5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = MGCLCSUVY9; + GENERATE_INFOPLIST_FILE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 16.4; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.dapperlabs.ExampleTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Example"; + }; + name = Debug; + }; + 1519728A29ED89EF00F651F5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = MGCLCSUVY9; + GENERATE_INFOPLIST_FILE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 16.4; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.dapperlabs.ExampleTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Example"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1519725C29ED89EE00F651F5 /* Build configuration list for PBXProject "Example" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1519728329ED89EF00F651F5 /* Debug */, + 1519728429ED89EF00F651F5 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1519728529ED89EF00F651F5 /* Build configuration list for PBXNativeTarget "Example" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1519728629ED89EF00F651F5 /* Debug */, + 1519728729ED89EF00F651F5 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1519728829ED89EF00F651F5 /* Build configuration list for PBXNativeTarget "ExampleTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1519728929ED89EF00F651F5 /* Debug */, + 1519728A29ED89EF00F651F5 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 1519725929ED89EE00F651F5 /* Project object */; +} diff --git a/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Example/Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Example/Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/Example.xcodeproj/project.xcworkspace/xcuserdata/lmcmz.xcuserdatad/UserInterfaceState.xcuserstate b/Example/Example.xcodeproj/project.xcworkspace/xcuserdata/lmcmz.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..423a8a6 Binary files /dev/null and b/Example/Example.xcodeproj/project.xcworkspace/xcuserdata/lmcmz.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme b/Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme new file mode 100644 index 0000000..c52e2a5 --- /dev/null +++ b/Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Example.xcodeproj/xcshareddata/xcschemes/ExampleTests.xcscheme b/Example/Example.xcodeproj/xcshareddata/xcschemes/ExampleTests.xcscheme new file mode 100644 index 0000000..04e4749 --- /dev/null +++ b/Example/Example.xcodeproj/xcshareddata/xcschemes/ExampleTests.xcscheme @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Example.xcodeproj/xcuserdata/lmcmz.xcuserdatad/xcschemes/xcschememanagement.plist b/Example/Example.xcodeproj/xcuserdata/lmcmz.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..1fddb53 --- /dev/null +++ b/Example/Example.xcodeproj/xcuserdata/lmcmz.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,32 @@ + + + + + SchemeUserState + + Example.xcscheme_^#shared#^_ + + orderHint + 0 + + ExampleTests.xcscheme_^#shared#^_ + + orderHint + 1 + + + SuppressBuildableAutocreation + + 1519726029ED89EE00F651F5 + + primary + + + 1519727029ED89EF00F651F5 + + primary + + + + + diff --git a/Example/Example/Assets.xcassets/AccentColor.colorset/Contents.json b/Example/Example/Assets.xcassets/AccentColor.colorset/Contents.json new file mode 100644 index 0000000..eb87897 --- /dev/null +++ b/Example/Example/Assets.xcassets/AccentColor.colorset/Contents.json @@ -0,0 +1,11 @@ +{ + "colors" : [ + { + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Example/Example/Assets.xcassets/AppIcon.appiconset/Contents.json b/Example/Example/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..13613e3 --- /dev/null +++ b/Example/Example/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,13 @@ +{ + "images" : [ + { + "idiom" : "universal", + "platform" : "ios", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Example/Example/Assets.xcassets/Contents.json b/Example/Example/Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Example/Example/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Example/Example/ContentView.swift b/Example/Example/ContentView.swift new file mode 100644 index 0000000..966cbee --- /dev/null +++ b/Example/Example/ContentView.swift @@ -0,0 +1,26 @@ +// +// ContentView.swift +// Example +// +// Created by Hao Fu on 18/4/2023. +// + +import SwiftUI + +struct ContentView: View { + var body: some View { + VStack { + Image(systemName: "globe") + .imageScale(.large) + .foregroundColor(.accentColor) + Text("Hello, world!") + } + .padding() + } +} + +struct ContentView_Previews: PreviewProvider { + static var previews: some View { + ContentView() + } +} diff --git a/Example/Example/ExampleApp.swift b/Example/Example/ExampleApp.swift new file mode 100644 index 0000000..f21ef44 --- /dev/null +++ b/Example/Example/ExampleApp.swift @@ -0,0 +1,17 @@ +// +// ExampleApp.swift +// Example +// +// Created by Hao Fu on 18/4/2023. +// + +import SwiftUI + +@main +struct ExampleApp: App { + var body: some Scene { + WindowGroup { + ContentView() + } + } +} diff --git a/Example/Example/Info.plist b/Example/Example/Info.plist new file mode 100644 index 0000000..0c67376 --- /dev/null +++ b/Example/Example/Info.plist @@ -0,0 +1,5 @@ + + + + + diff --git a/Example/Example/Preview Content/Preview Assets.xcassets/Contents.json b/Example/Example/Preview Content/Preview Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Example/Example/Preview Content/Preview Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Example/ExampleTests/ExampleTests.swift b/Example/ExampleTests/ExampleTests.swift new file mode 100644 index 0000000..7fdb48f --- /dev/null +++ b/Example/ExampleTests/ExampleTests.swift @@ -0,0 +1,75 @@ +// +// ExampleTests.swift +// ExampleTests +// +// Created by Hao Fu on 18/4/2023. +// + +import XCTest +@testable import Example +import Flow +import CryptoKit + +class ECDSA_P256_Signer: Signer { + + var keyIndex: Int32 + var address: String + var privateKey: P256.Signing.PrivateKey + + init(address: String, keyIndex: Int32, privateKey: P256.Signing.PrivateKey) { + self.address = address + self.keyIndex = keyIndex + self.privateKey = privateKey + } + + func sign(bytes: KotlinByteArray) async -> KotlinByteArray { + let data = Data(bytes.toHexString().hexValue) + let hashedData = SHA256.hash(data: data) + let signature = try? privateKey.signature(for: hashedData) + return bytes + } + + +} + + +final class ExampleTests: XCTestCase { + + let addressA = "0xc6de0d94160377cd" + let publicKeyA = try! P256.KeyAgreement.PublicKey(rawRepresentation: "d487802b66e5c0498ead1c3f576b718949a3500218e97a6a4a62bf69a8b0019789639bc7acaca63f5889c1e7251c19066abb09fcd6b273e394a8ac4ee1a3372f".hexValue) + let privateKeyA = try! P256.Signing.PrivateKey(rawRepresentation: "c9c0f04adddf7674d265c395de300a65a777d3ec412bba5bfdfd12cffbbb78d9".hexValue) + + let api = FlowApi(chainId: ChainId.Testnet()) + + func testSign() throws { + + Transaction(id: nil, + script: <#T##String#>, + arguments: <#T##[Cadence.Value]#>, + referenceBlockId: <#T##String#>, + gasLimit: <#T##BignumBigInteger#>, + payer: <#T##String#>, + proposalKey: <#T##ProposalKey#>, + authorizers: <#T##[String]#>, + payloadSignatures: [], + envelopeSignatures: [], + expandable: nil, + result: nil, + links: nil) + +// api.sendTransaction(request: <#T##Transaction#>, completionHandler: <#T##(Transaction?, Error?) -> Void#>) + } + +} + +extension String { + /// Convert hex string to bytes + var hexValue: [UInt8] { + var startIndex = self.startIndex + return (0 ..< count / 2).compactMap { _ in + let endIndex = index(after: startIndex) + defer { startIndex = index(after: endIndex) } + return UInt8(self[startIndex ... endIndex], radix: 16) + } + } +} diff --git a/flow/src/commonMain/kotlin/org/onflow/flow/models/DomainTag.kt b/flow/src/commonMain/kotlin/org/onflow/flow/models/DomainTag.kt index 0076b5b..112007a 100644 --- a/flow/src/commonMain/kotlin/org/onflow/flow/models/DomainTag.kt +++ b/flow/src/commonMain/kotlin/org/onflow/flow/models/DomainTag.kt @@ -9,11 +9,17 @@ sealed class DomainTag { open val bytes: ByteArray get() = tag.toByteArray().paddingZeroRight(32) - data class Transaction(override val tag: String = "FLOW-V0.0-transaction") : DomainTag() + object Transaction : DomainTag() { + override val tag: String = "FLOW-V0.0-transaction" + } - data class User(override val tag: String = "FLOW-V0.0-user") : DomainTag() + object User: DomainTag() { + override val tag: String = "FLOW-V0.0-user" + } - data class AccountProof(override val tag: String = "FCL-ACCOUNT-PROOF-V0.0") : DomainTag() + object AccountProof: DomainTag() { + override val tag: String = "FLOW-V0.0-account-proof" + } data class Custom(override val tag: String): DomainTag() } \ No newline at end of file diff --git a/flow/src/commonMain/kotlin/org/onflow/flow/models/Serializers.kt b/flow/src/commonMain/kotlin/org/onflow/flow/models/Serializers.kt new file mode 100644 index 0000000..a732900 --- /dev/null +++ b/flow/src/commonMain/kotlin/org/onflow/flow/models/Serializers.kt @@ -0,0 +1,54 @@ +package org.onflow.flow.models + +import io.ktor.util.* +import io.ktor.utils.io.core.* +import kotlinx.serialization.KSerializer +import kotlinx.serialization.builtins.ListSerializer +import kotlinx.serialization.descriptors.PrimitiveKind +import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor +import kotlinx.serialization.descriptors.SerialDescriptor +import kotlinx.serialization.encoding.Decoder +import kotlinx.serialization.encoding.Encoder +import org.onflow.flow.infrastructure.Cadence +import org.onflow.flow.infrastructure.addHexPrefix +import org.onflow.flow.infrastructure.removeHexPrefix + +object Base64UFT8Serializer : KSerializer { + override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("base64ToUTF8", PrimitiveKind.STRING) + override fun serialize(encoder: Encoder, value: String) = encoder.encodeString(value.toByteArray().encodeBase64()) + override fun deserialize(decoder: Decoder): String = decoder.decodeString().decodeBase64Bytes().decodeToString() +} + +object StringIntSerializer : KSerializer { + override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("StringInt", PrimitiveKind.STRING) + override fun serialize(encoder: Encoder, value: Int) = encoder.encodeInt(value) + override fun deserialize(decoder: Decoder): Int = decoder.decodeString().toInt() +} + +object Base64HexSerializer : KSerializer { + override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("base64ToUTF8", PrimitiveKind.STRING) + override fun serialize(encoder: Encoder, value: String) = encoder.encodeString(hex(value.removeHexPrefix()).encodeBase64()) + override fun deserialize(decoder: Decoder): String = hex(decoder.decodeString().decodeBase64Bytes()).addHexPrefix() +} + +object CadenceBase64Serializer : KSerializer { + override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("CadenceBase64", PrimitiveKind.STRING) + override fun serialize(encoder: Encoder, value: Cadence.Value) = encoder.encodeString(value.encodeBase64()) + override fun deserialize(decoder: Decoder): Cadence.Value = Cadence.Value.decodeFromBase64(decoder.decodeString()) +} + +class CadenceBase64ListSerializer : KSerializer> { + private val elementSerializer = ListSerializer(CadenceBase64Serializer) + override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("CadenceBase64List", PrimitiveKind.STRING) + + override fun deserialize(decoder: Decoder): List { + return decoder.decodeSerializableValue(elementSerializer) + } + + override fun serialize(encoder: Encoder, value: List) { + encoder.encodeSerializableValue(elementSerializer, value) + } +} + +fun ByteArray.toHexString() = hex(this) +fun ByteArray.toBase64() = encodeBase64() \ No newline at end of file diff --git a/flow/src/commonMain/kotlin/org/onflow/flow/models/Signer.kt b/flow/src/commonMain/kotlin/org/onflow/flow/models/Signer.kt new file mode 100644 index 0000000..46ecbe3 --- /dev/null +++ b/flow/src/commonMain/kotlin/org/onflow/flow/models/Signer.kt @@ -0,0 +1,15 @@ +package org.onflow.flow.models + +interface Signer { + var address: String + var keyIndex: Int + suspend fun sign(bytes: ByteArray): ByteArray +// suspend fun signWithDomain(bytes: ByteArray, domain: ByteArray): ByteArray = sign(domain + bytes) +// suspend fun signAsUser(bytes: ByteArray): ByteArray = signWithDomain(bytes, DomainTag.User.bytes) +// suspend fun signAsTransaction(bytes: ByteArray): ByteArray = signWithDomain(bytes, DomainTag.Transaction.bytes) +} + +//interface Hasher { +// fun hash(bytes: ByteArray): ByteArray +// fun hashAsHexString(bytes: ByteArray): String = hash(bytes).toHexString() +//} \ No newline at end of file diff --git a/flow/src/commonMain/kotlin/org/onflow/flow/models/Transaction.kt b/flow/src/commonMain/kotlin/org/onflow/flow/models/Transaction.kt index e6b3b8d..91b4bbd 100644 --- a/flow/src/commonMain/kotlin/org/onflow/flow/models/Transaction.kt +++ b/flow/src/commonMain/kotlin/org/onflow/flow/models/Transaction.kt @@ -2,19 +2,11 @@ package org.onflow.flow.models import org.onflow.flow.infrastructure.BigIntegerCadenceSerializer import org.onflow.flow.infrastructure.Cadence -import org.onflow.flow.infrastructure.addHexPrefix -import org.onflow.flow.infrastructure.removeHexPrefix import org.onflow.flow.rlp.* import com.ionspin.kotlin.bignum.integer.BigInteger import io.ktor.util.* import io.ktor.utils.io.core.* import kotlinx.serialization.* -import kotlinx.serialization.builtins.ListSerializer -import kotlinx.serialization.descriptors.PrimitiveKind -import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor -import kotlinx.serialization.descriptors.SerialDescriptor -import kotlinx.serialization.encoding.Decoder -import kotlinx.serialization.encoding.Encoder /** * @@ -79,6 +71,80 @@ data class Transaction ( item to index } .toMap() + + private fun findSigners(address: String, signers: List): List { + return signers.filter { signer -> + signer.address == address + } + } + + suspend fun signPayload(signers: List): Transaction { + val payloadMessage = payloadMessage() + val payloadSignatures = mutableListOf() + + // Sign with the proposal key first. + // If proposer is same as payer, we skip this step + if (proposalKey.address != payer) { + val signerList = findSigners(proposalKey.address, signers) + for (signUser in signerList) { + val signature = signUser.sign(payloadMessage) + val txSignature = TransactionSignature( + address = signUser.address, + keyIndex = signUser.keyIndex, + signature = signature.toHexString(), + signerIndex = this.signers[signUser.address] ?: -1 + ) + payloadSignatures.add(txSignature) + } + } + + // Sign the transaction with each authorizer + for (authorizer in authorizers) { + if (proposalKey.address == authorizer || payer == authorizer) { + continue + } + + val signerList = findSigners(authorizer, signers) + for (signUser in signerList) { + val signature = signUser.sign(payloadMessage) + val txSignature = TransactionSignature( + address = signUser.address, + keyIndex = signUser.keyIndex, + signature = signature.toHexString(), + signerIndex = this.signers[signUser.address] ?: -1 + ) + payloadSignatures.add(txSignature) + } + } + + payloadSignatures.sortWith(CompareTransactionSignature) + return copy(payloadSignatures = payloadSignatures) + } + + suspend fun signEnvelope(signers: List): Transaction { + val envelopeMessage = envelopeMessage() + val envelopeSignatures = mutableListOf() + + // Sign the transaction with payer + val signerList = findSigners(payer, signers) + for (signUser in signerList) { + val signature = signUser.sign(envelopeMessage) + val txSignature = TransactionSignature( + address = signUser.address, + keyIndex = signUser.keyIndex, + signature = signature.toHexString(), + signerIndex = this.signers[signUser.address] ?: -1 + ) + envelopeSignatures.add(txSignature) + } + + envelopeSignatures.sortWith(CompareTransactionSignature) + return copy(envelopeSignatures = envelopeSignatures) + } + + suspend fun sign(signers: List): Transaction { + return signPayload(signers).signEnvelope(signers) + } } fun Transaction.payload(): List = listOf( @@ -96,7 +162,7 @@ fun Transaction.payload(): List = listOf( fun Transaction.toRLP(): RLPElement = payload().toRLP() fun Transaction.payloadMessage(): ByteArray = - DomainTag.Transaction().bytes + + DomainTag.Transaction.bytes + (RLPList( listOf( RLPList(payload()), @@ -108,35 +174,20 @@ fun Transaction.payloadMessage(): ByteArray = ) )).encode() -object Base64UFT8Serializer : KSerializer { - override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("base64ToUTF8", PrimitiveKind.STRING) - override fun serialize(encoder: Encoder, value: String) = encoder.encodeString(value.toByteArray().encodeBase64()) - override fun deserialize(decoder: Decoder): String = decoder.decodeString().decodeBase64Bytes().decodeToString() -} - -object Base64HexSerializer : KSerializer { - override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("base64ToUTF8", PrimitiveKind.STRING) - override fun serialize(encoder: Encoder, value: String) = encoder.encodeString(hex(value.removeHexPrefix()).encodeBase64()) - override fun deserialize(decoder: Decoder): String = hex(decoder.decodeString().decodeBase64Bytes()).addHexPrefix() -} - -object CadenceBase64Serializer : KSerializer { - override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("CadenceBase64", PrimitiveKind.STRING) - override fun serialize(encoder: Encoder, value: Cadence.Value) = encoder.encodeString(value.encodeBase64()) - override fun deserialize(decoder: Decoder): Cadence.Value = Cadence.Value.decodeFromBase64(decoder.decodeString()) -} - -class CadenceBase64ListSerializer : KSerializer> { - private val elementSerializer = ListSerializer(CadenceBase64Serializer) - override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("CadenceBase64List", PrimitiveKind.STRING) - - override fun deserialize(decoder: Decoder): List { - return decoder.decodeSerializableValue(elementSerializer) - } - - override fun serialize(encoder: Encoder, value: List) { - encoder.encodeSerializableValue(elementSerializer, value) - } -} - - +fun Transaction.envelopeMessage(): ByteArray = + DomainTag.Transaction.bytes + + (RLPList( + listOf( + RLPList(payload()), + RLPList( + payloadSignatures.map { + listOf((signers[it.address] ?: -1).toRLP(), it.keyIndex.toRLP(), hex(it.signature).toRLP()).toRLP() + } + ), + RLPList( + envelopeSignatures.map { + listOf((signers[it.address] ?: -1).toRLP(), it.keyIndex.toRLP(), hex(it.signature).toRLP()).toRLP() + } + ) + ) + )).encode() diff --git a/flow/src/commonMain/kotlin/org/onflow/flow/models/TransactionSignature.kt b/flow/src/commonMain/kotlin/org/onflow/flow/models/TransactionSignature.kt index bc183c0..1b607d9 100644 --- a/flow/src/commonMain/kotlin/org/onflow/flow/models/TransactionSignature.kt +++ b/flow/src/commonMain/kotlin/org/onflow/flow/models/TransactionSignature.kt @@ -16,11 +16,21 @@ data class TransactionSignature ( /* The 8-byte address of an account. */ @SerialName(value = "address") @Required val address: String, - @SerialName(value = "key_index") @Required val keyIndex: String, + @Serializable(StringIntSerializer::class) + @SerialName(value = "key_index") @Required val keyIndex: Int, /* A variable length signature. */ @Serializable(Base64HexSerializer::class) - @SerialName(value = "signature") @Required val signature: String + @SerialName(value = "signature") @Required val signature: String, + var signerIndex: Int = -1 ) +class CompareTransactionSignature { + companion object : Comparator { + override fun compare(a: TransactionSignature, b: TransactionSignature): Int = when { + a.keyIndex == b.keyIndex -> a.signerIndex - b.signerIndex + else -> a.keyIndex - b.keyIndex + } + } +} diff --git a/flow/src/commonTest/kotlin/org/onflow/flow/FlowMainnetApiTests.kt b/flow/src/commonTest/kotlin/org/onflow/flow/FlowMainnetApiTests.kt index 37dfff2..c87d246 100644 --- a/flow/src/commonTest/kotlin/org/onflow/flow/FlowMainnetApiTests.kt +++ b/flow/src/commonTest/kotlin/org/onflow/flow/FlowMainnetApiTests.kt @@ -14,7 +14,6 @@ class FlowMainnetApiTests { val api = FlowApi(ChainId.Mainnet) @Test - @Ignore fun testGetTransactionID() { runBlocking { val tx = api.getTransaction("663869d910278d7b6caf793396f6f2c5b91aace7180c2c70cfb3b0b6efd7a049") diff --git a/flow/src/iosMain/kotlin/org.onflow.flow.models/NSData.kt b/flow/src/iosMain/kotlin/org.onflow.flow.models/NSData.kt new file mode 100644 index 0000000..f34de1d --- /dev/null +++ b/flow/src/iosMain/kotlin/org.onflow.flow.models/NSData.kt @@ -0,0 +1,29 @@ +package org.onflow.flow.models + +import kotlinx.cinterop.addressOf +import kotlinx.cinterop.pin +import kotlinx.cinterop.usePinned +import platform.Foundation.NSData +import platform.Foundation.create +import platform.posix.memcpy + +internal inline fun ByteArray.toData(): NSData { + if (isEmpty()) return NSData() + val pinned = pin() + return NSData.create( + bytesNoCopy = pinned.addressOf(0), + length = size.toULong(), + deallocator = { _, _ -> pinned.unpin() } + ) +} + +internal fun NSData.toByteArray(): ByteArray { + val size = length.toInt() + val bytes = ByteArray(size) + if (size > 0) { + bytes.usePinned { pinned -> + memcpy(pinned.addressOf(0), this.bytes, this.length) + } + } + return bytes +} \ No newline at end of file diff --git a/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Flow b/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Flow index a120e0d..82f0e2a 100755 Binary files a/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Flow and b/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Flow differ diff --git a/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Headers/Flow.h b/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Headers/Flow.h index f1bd974..cfb5896 100644 --- a/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Headers/Flow.h +++ b/flow/swiftpackage/Flow.xcframework/ios-arm64/Flow.framework/Headers/Flow.h @@ -6,9 +6,9 @@ #import #import -@class FlowChainId, FlowChainIdCanary, FlowChainIdCustom, FlowChainIdEmulator, FlowChainIdMainnet, FlowChainIdSandboxnet, FlowChainIdTestnet, FlowCadenceValue, FlowAccount, FlowBlock, FlowBlockHeader, FlowCollection, FlowBlockEvents, FlowExecutionResult, FlowTransaction, FlowTransactionResult, FlowKotlinThrowable, FlowKotlinArray, FlowKotlinException, FlowKotlinRuntimeException, FlowKotlinIllegalArgumentException, FlowRLPType, FlowKotlinByteArray, FlowRLPElement, FlowRLPList, FlowApiBaseCompanion, FlowKtor_client_coreHttpClient, FlowBase64ByteArrayCompanion, FlowBase64ByteArray, FlowBigDecimalCadenceSerializer, FlowBignumBigDecimal, FlowBigIntegerCadenceSerializer, FlowBignumBigInteger, FlowByteCadenceSerializer, FlowCadenceCompanion, FlowCadenceType, FlowCadenceCapabilityCompanion, FlowCadenceCapability, FlowCadenceValueAddressValue, FlowCadenceValueArrayValue, FlowCadenceValueBooleanValue, FlowCadenceValueCapabilityValue, FlowCadenceValueContractValue, FlowCadenceCompositeValue, FlowCadenceValueDictionaryValue, FlowCadenceDictionaryFieldEntry, FlowCadenceValueFix64Value, FlowCadenceValueIntValue, FlowCadenceValueInt128Value, FlowCadenceValueInt16Value, FlowCadenceValueInt256Value, FlowCadenceValueInt32Value, FlowCadenceValueInt64Value, FlowCadenceValueInt8Value, FlowCadenceValueOptionalValue, FlowCadenceValuePathValue, FlowCadencePath, FlowCadencePathDomain, FlowCadenceValueStringValue, FlowCadenceValueStructValue, FlowCadenceValueTypeValue, FlowCadenceKind, FlowCadenceTypeEntry, FlowCadenceValueUFix64Value, FlowCadenceValueUIntValue, FlowCadenceValueUInt128Value, FlowCadenceValueUInt16Value, FlowCadenceValueUInt256Value, FlowCadenceValueUInt32Value, FlowCadenceValueUInt64Value, FlowCadenceValueUInt8Value, FlowCadenceValueVoidValue, FlowCadenceValueWord16Value, FlowCadenceValueWord32Value, FlowCadenceValueWord64Value, FlowCadenceValueWord8Value, FlowCadenceCompositeAttributeCompanion, FlowCadenceCompositeAttribute, FlowCadenceCompositeValueCompanion, FlowKotlinPair<__covariant A, __covariant B>, FlowCadenceDictionaryFieldEntryCompanion, FlowCadenceKindCompanion, FlowCadencePathCompanion, FlowKotlinEnumCompanion, FlowKotlinEnum, FlowCadencePathDomainCompanion, FlowCadenceTypeCompanion, FlowCadenceTypeEntryCompanion, FlowCadenceValueCompanion, FlowCadenceValueAddressValueCompanion, FlowCadenceValueArrayValueCompanion, FlowCadenceValueBooleanValueCompanion, FlowCadenceValueCapabilityValueCompanion, FlowKotlinx_serialization_jsonJsonElement, FlowKotlinx_serialization_jsonJson, FlowCadenceValueContractValueCompanion, FlowCadenceValueDictionaryValueCompanion, FlowCadenceValueEnumValueCompanion, FlowCadenceValueEnumValue, FlowCadenceValueEventValueCompanion, FlowCadenceValueEventValue, FlowCadenceValueFix64ValueCompanion, FlowCadenceValueInt128ValueCompanion, FlowCadenceValueInt16ValueCompanion, FlowCadenceValueInt256ValueCompanion, FlowCadenceValueInt32ValueCompanion, FlowCadenceValueInt64ValueCompanion, FlowCadenceValueInt8ValueCompanion, FlowCadenceValueIntValueCompanion, FlowCadenceValueOptionalValueCompanion, FlowCadenceValuePathValueCompanion, FlowCadenceValueResourceValueCompanion, FlowCadenceValueResourceValue, FlowCadenceValueStringValueCompanion, FlowCadenceValueStructValueCompanion, FlowCadenceValueTypeValueCompanion, FlowCadenceValueUFix64ValueCompanion, FlowCadenceValueUInt128ValueCompanion, FlowCadenceValueUInt16ValueCompanion, FlowCadenceValueUInt256ValueCompanion, FlowCadenceValueUInt32ValueCompanion, FlowCadenceValueUInt64ValueCompanion, FlowCadenceValueUInt8ValueCompanion, FlowCadenceValueUIntValueCompanion, FlowKotlinUnit, FlowCadenceValueVoidValueCompanion, FlowCadenceValueWord16ValueCompanion, FlowCadenceValueWord32ValueCompanion, FlowCadenceValueWord64ValueCompanion, FlowCadenceValueWord8ValueCompanion, FlowCadenceTypeSerializer, FlowDoubleCadenceSerializer, FlowFixedPointFormatter, FlowIntCadenceSerializer, FlowLongCadenceSerializer, FlowShortCadenceSerializer, FlowUByteCadenceSerializer, FlowUIntCadenceSerializer, FlowULongCadenceSerializer, FlowUShortCadenceSerializer, FlowAccountExpandable, FlowAccountPublicKey, FlowLinks, FlowAccountCompanion, FlowAccountExpandableCompanion, FlowSigningAlgorithm, FlowHashingAlgorithm, FlowAccountPublicKeyCompanion, FlowAggregatedSignatureCompanion, FlowAggregatedSignature, FlowBase64HexSerializer, FlowBase64UFT8Serializer, FlowBlockExpandable, FlowBlockPayload, FlowBlockCompanion, FlowEvent, FlowBlockEventsCompanion, FlowBlockExpandableCompanion, FlowBlockHeaderCompanion, FlowBlockHeightOneOfCompanion, FlowBlockHeightOneOf, FlowCollectionGuarantee, FlowBlockSeal, FlowBlockPayloadCompanion, FlowBlockSealCompanion, FlowCadenceBase64Serializer, FlowChunkCompanion, FlowChunk, FlowCollectionExpandable, FlowCollectionCompanion, FlowCollectionExpandableCompanion, FlowCollectionGuaranteeCompanion, FlowDomainTag, FlowDomainTagAccountProof, FlowDomainTagCustom, FlowDomainTagTransaction, FlowDomainTagUser, FlowErrorCompanion, FlowError, FlowEventCompanion, FlowExecutionResultCompanion, FlowHashingAlgorithmCompanion, FlowLinksCompanion, FlowProposalKeyCompanion, FlowProposalKey, FlowScriptsPostRequestCompanion, FlowScriptsPostRequest, FlowScriptsPostResponseCompanion, FlowScriptsPostResponse, FlowSigningAlgorithmCompanion, FlowTransactionSignature, FlowTransactionExpandable, FlowTransactionCompanion, FlowTransactionExecutionCompanion, FlowTransactionExecution, FlowTransactionExpandableCompanion, FlowTransactionStatus, FlowTransactionResultCompanion, FlowTransactionSignatureCompanion, FlowTransactionStatusCompanion, FlowFlowApi, FlowKotlinByteIterator, FlowBignumBigIntegerCompanion, FlowBignumBigIntegerQuotientAndRemainder, FlowBignumSign, FlowBignumBigIntegerBigIntegerRange, FlowBignumBigIntegerSqareRootAndRemainder, FlowBignumModularBigInteger, FlowKotlinIllegalStateException, FlowKtor_client_coreHttpClientEngineConfig, FlowKtor_client_coreHttpClientConfig, FlowKtor_eventsEvents, FlowKtor_client_coreHttpReceivePipeline, FlowKtor_client_coreHttpRequestPipeline, FlowKtor_client_coreHttpResponsePipeline, FlowKtor_client_coreHttpSendPipeline, FlowKotlinx_serialization_coreSerializersModule, FlowKotlinx_serialization_coreSerialKind, FlowKotlinNothing, FlowBignumBigDecimalCompanion, FlowBignumDecimalMode, FlowBignumRoundingMode, FlowKotlinx_serialization_jsonJsonElementCompanion, FlowKotlinx_serialization_jsonJsonDefault, FlowKotlinx_serialization_jsonJsonConfiguration, FlowBignumModularBigIntegerCompanion, FlowBignumModularQuotientAndRemainder, FlowKtor_client_coreHttpRequestData, FlowKtor_client_coreHttpResponseData, FlowKotlinx_coroutines_coreCoroutineDispatcher, FlowKtor_client_coreProxyConfig, FlowKtor_utilsAttributeKey, FlowKtor_eventsEventDefinition, FlowKtor_utilsPipelinePhase, FlowKtor_utilsPipeline, FlowKtor_client_coreHttpReceivePipelinePhases, FlowKtor_client_coreHttpResponse, FlowKtor_client_coreHttpRequestPipelinePhases, FlowKtor_client_coreHttpRequestBuilder, FlowKtor_client_coreHttpResponsePipelinePhases, FlowKtor_client_coreHttpResponseContainer, FlowKtor_client_coreHttpClientCall, FlowKtor_client_coreHttpSendPipelinePhases, FlowBignumDecimalModeCompanion, FlowKtor_httpUrl, FlowKtor_httpHttpMethod, FlowKtor_httpOutgoingContent, FlowKtor_httpHttpStatusCode, FlowKtor_utilsGMTDate, FlowKtor_httpHttpProtocolVersion, FlowKotlinAbstractCoroutineContextElement, FlowKotlinx_coroutines_coreCoroutineDispatcherKey, FlowKtor_httpHeadersBuilder, FlowKtor_client_coreHttpRequestBuilderCompanion, FlowKtor_httpURLBuilder, FlowKtor_utilsTypeInfo, FlowKtor_client_coreHttpClientCallCompanion, FlowKtor_httpUrlCompanion, FlowKtor_httpURLProtocol, FlowKtor_httpHttpMethodCompanion, FlowKtor_httpContentType, FlowKotlinCancellationException, FlowKtor_httpHttpStatusCodeCompanion, FlowKtor_utilsGMTDateCompanion, FlowKtor_utilsWeekDay, FlowKtor_utilsMonth, FlowKtor_httpHttpProtocolVersionCompanion, FlowKotlinAbstractCoroutineContextKey, FlowKtor_ioMemory, FlowKtor_ioChunkBuffer, FlowKtor_ioBuffer, FlowKtor_ioByteReadPacket, FlowKtor_utilsStringValuesBuilderImpl, FlowKtor_httpURLBuilderCompanion, FlowKtor_httpURLProtocolCompanion, FlowKtor_httpHeaderValueParam, FlowKtor_httpHeaderValueWithParametersCompanion, FlowKtor_httpHeaderValueWithParameters, FlowKtor_httpContentTypeCompanion, FlowKtor_utilsWeekDayCompanion, FlowKtor_utilsMonthCompanion, FlowKtor_ioMemoryCompanion, FlowKtor_ioBufferCompanion, FlowKtor_ioChunkBufferCompanion, FlowKtor_ioInputCompanion, FlowKtor_ioInput, FlowKtor_ioByteReadPacketCompanion, FlowKotlinKTypeProjection, FlowKotlinx_coroutines_coreAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp, FlowKotlinKVariance, FlowKotlinKTypeProjectionCompanion, FlowKotlinx_coroutines_coreAtomicOp<__contravariant T>, FlowKotlinx_coroutines_coreOpDescriptor, FlowKotlinx_coroutines_coreLockFreeLinkedListNode, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc; +@class FlowChainId, FlowChainIdCanary, FlowChainIdCustom, FlowChainIdEmulator, FlowChainIdMainnet, FlowChainIdSandboxnet, FlowChainIdTestnet, FlowCadenceValue, FlowAccount, FlowBlock, FlowBlockHeader, FlowCollection, FlowBlockEvents, FlowExecutionResult, FlowTransaction, FlowTransactionResult, FlowKotlinThrowable, FlowKotlinArray, FlowKotlinException, FlowKotlinRuntimeException, FlowKotlinIllegalArgumentException, FlowRLPType, FlowKotlinByteArray, FlowRLPElement, FlowRLPList, FlowApiBaseCompanion, FlowKtor_client_coreHttpClient, FlowBase64ByteArrayCompanion, FlowBase64ByteArray, FlowBigDecimalCadenceSerializer, FlowBignumBigDecimal, FlowBigIntegerCadenceSerializer, FlowBignumBigInteger, FlowByteCadenceSerializer, FlowCadenceCompanion, FlowCadenceType, FlowCadenceCapabilityCompanion, FlowCadenceCapability, FlowCadenceValueAddressValue, FlowCadenceValueArrayValue, FlowCadenceValueBooleanValue, FlowCadenceValueCapabilityValue, FlowCadenceValueContractValue, FlowCadenceCompositeValue, FlowCadenceValueDictionaryValue, FlowCadenceDictionaryFieldEntry, FlowCadenceValueFix64Value, FlowCadenceValueIntValue, FlowCadenceValueInt128Value, FlowCadenceValueInt16Value, FlowCadenceValueInt256Value, FlowCadenceValueInt32Value, FlowCadenceValueInt64Value, FlowCadenceValueInt8Value, FlowCadenceValueOptionalValue, FlowCadenceValuePathValue, FlowCadencePath, FlowCadencePathDomain, FlowCadenceValueStringValue, FlowCadenceValueStructValue, FlowCadenceValueTypeValue, FlowCadenceKind, FlowCadenceTypeEntry, FlowCadenceValueUFix64Value, FlowCadenceValueUIntValue, FlowCadenceValueUInt128Value, FlowCadenceValueUInt16Value, FlowCadenceValueUInt256Value, FlowCadenceValueUInt32Value, FlowCadenceValueUInt64Value, FlowCadenceValueUInt8Value, FlowCadenceValueVoidValue, FlowCadenceValueWord16Value, FlowCadenceValueWord32Value, FlowCadenceValueWord64Value, FlowCadenceValueWord8Value, FlowCadenceCompositeAttributeCompanion, FlowCadenceCompositeAttribute, FlowCadenceCompositeValueCompanion, FlowKotlinPair<__covariant A, __covariant B>, FlowCadenceDictionaryFieldEntryCompanion, FlowCadenceKindCompanion, FlowCadencePathCompanion, FlowKotlinEnumCompanion, FlowKotlinEnum, FlowCadencePathDomainCompanion, FlowCadenceTypeCompanion, FlowCadenceTypeEntryCompanion, FlowCadenceValueCompanion, FlowCadenceValueAddressValueCompanion, FlowCadenceValueArrayValueCompanion, FlowCadenceValueBooleanValueCompanion, FlowCadenceValueCapabilityValueCompanion, FlowKotlinx_serialization_jsonJsonElement, FlowKotlinx_serialization_jsonJson, FlowCadenceValueContractValueCompanion, FlowCadenceValueDictionaryValueCompanion, FlowCadenceValueEnumValueCompanion, FlowCadenceValueEnumValue, FlowCadenceValueEventValueCompanion, FlowCadenceValueEventValue, FlowCadenceValueFix64ValueCompanion, FlowCadenceValueInt128ValueCompanion, FlowCadenceValueInt16ValueCompanion, FlowCadenceValueInt256ValueCompanion, FlowCadenceValueInt32ValueCompanion, FlowCadenceValueInt64ValueCompanion, FlowCadenceValueInt8ValueCompanion, FlowCadenceValueIntValueCompanion, FlowCadenceValueOptionalValueCompanion, FlowCadenceValuePathValueCompanion, FlowCadenceValueResourceValueCompanion, FlowCadenceValueResourceValue, FlowCadenceValueStringValueCompanion, FlowCadenceValueStructValueCompanion, FlowCadenceValueTypeValueCompanion, FlowCadenceValueUFix64ValueCompanion, FlowCadenceValueUInt128ValueCompanion, FlowCadenceValueUInt16ValueCompanion, FlowCadenceValueUInt256ValueCompanion, FlowCadenceValueUInt32ValueCompanion, FlowCadenceValueUInt64ValueCompanion, FlowCadenceValueUInt8ValueCompanion, FlowCadenceValueUIntValueCompanion, FlowKotlinUnit, FlowCadenceValueVoidValueCompanion, FlowCadenceValueWord16ValueCompanion, FlowCadenceValueWord32ValueCompanion, FlowCadenceValueWord64ValueCompanion, FlowCadenceValueWord8ValueCompanion, FlowCadenceTypeSerializer, FlowDoubleCadenceSerializer, FlowFixedPointFormatter, FlowIntCadenceSerializer, FlowLongCadenceSerializer, FlowShortCadenceSerializer, FlowUByteCadenceSerializer, FlowUIntCadenceSerializer, FlowULongCadenceSerializer, FlowUShortCadenceSerializer, FlowAccountExpandable, FlowAccountPublicKey, FlowLinks, FlowAccountCompanion, FlowAccountExpandableCompanion, FlowSigningAlgorithm, FlowHashingAlgorithm, FlowAccountPublicKeyCompanion, FlowAggregatedSignatureCompanion, FlowAggregatedSignature, FlowBase64HexSerializer, FlowBase64UFT8Serializer, FlowBlockExpandable, FlowBlockPayload, FlowBlockCompanion, FlowEvent, FlowBlockEventsCompanion, FlowBlockExpandableCompanion, FlowBlockHeaderCompanion, FlowBlockHeightOneOfCompanion, FlowBlockHeightOneOf, FlowCollectionGuarantee, FlowBlockSeal, FlowBlockPayloadCompanion, FlowBlockSealCompanion, FlowCadenceBase64Serializer, FlowChunkCompanion, FlowChunk, FlowCollectionExpandable, FlowCollectionCompanion, FlowCollectionExpandableCompanion, FlowCollectionGuaranteeCompanion, FlowCompareTransactionSignatureCompanion, FlowTransactionSignature, FlowDomainTag, FlowDomainTagAccountProof, FlowDomainTagCustom, FlowDomainTagTransaction, FlowDomainTagUser, FlowErrorCompanion, FlowError, FlowEventCompanion, FlowExecutionResultCompanion, FlowHashingAlgorithmCompanion, FlowLinksCompanion, FlowProposalKeyCompanion, FlowProposalKey, FlowScriptsPostRequestCompanion, FlowScriptsPostRequest, FlowScriptsPostResponseCompanion, FlowScriptsPostResponse, FlowSigningAlgorithmCompanion, FlowStringIntSerializer, FlowTransactionExpandable, FlowTransactionCompanion, FlowTransactionExecutionCompanion, FlowTransactionExecution, FlowTransactionExpandableCompanion, FlowTransactionStatus, FlowTransactionResultCompanion, FlowTransactionSignatureCompanion, FlowTransactionStatusCompanion, FlowFlowApi, FlowKotlinByteIterator, FlowBignumBigIntegerCompanion, FlowBignumBigIntegerQuotientAndRemainder, FlowBignumSign, FlowBignumBigIntegerBigIntegerRange, FlowBignumBigIntegerSqareRootAndRemainder, FlowBignumModularBigInteger, FlowKotlinIllegalStateException, FlowKtor_client_coreHttpClientEngineConfig, FlowKtor_client_coreHttpClientConfig, FlowKtor_eventsEvents, FlowKtor_client_coreHttpReceivePipeline, FlowKtor_client_coreHttpRequestPipeline, FlowKtor_client_coreHttpResponsePipeline, FlowKtor_client_coreHttpSendPipeline, FlowKotlinx_serialization_coreSerializersModule, FlowKotlinx_serialization_coreSerialKind, FlowKotlinNothing, FlowBignumBigDecimalCompanion, FlowBignumDecimalMode, FlowBignumRoundingMode, FlowKotlinx_serialization_jsonJsonElementCompanion, FlowKotlinx_serialization_jsonJsonDefault, FlowKotlinx_serialization_jsonJsonConfiguration, FlowBignumModularBigIntegerCompanion, FlowBignumModularQuotientAndRemainder, FlowKtor_client_coreHttpRequestData, FlowKtor_client_coreHttpResponseData, FlowKotlinx_coroutines_coreCoroutineDispatcher, FlowKtor_client_coreProxyConfig, FlowKtor_utilsAttributeKey, FlowKtor_eventsEventDefinition, FlowKtor_utilsPipelinePhase, FlowKtor_utilsPipeline, FlowKtor_client_coreHttpReceivePipelinePhases, FlowKtor_client_coreHttpResponse, FlowKtor_client_coreHttpRequestPipelinePhases, FlowKtor_client_coreHttpRequestBuilder, FlowKtor_client_coreHttpResponsePipelinePhases, FlowKtor_client_coreHttpResponseContainer, FlowKtor_client_coreHttpClientCall, FlowKtor_client_coreHttpSendPipelinePhases, FlowBignumDecimalModeCompanion, FlowKtor_httpUrl, FlowKtor_httpHttpMethod, FlowKtor_httpOutgoingContent, FlowKtor_httpHttpStatusCode, FlowKtor_utilsGMTDate, FlowKtor_httpHttpProtocolVersion, FlowKotlinAbstractCoroutineContextElement, FlowKotlinx_coroutines_coreCoroutineDispatcherKey, FlowKtor_httpHeadersBuilder, FlowKtor_client_coreHttpRequestBuilderCompanion, FlowKtor_httpURLBuilder, FlowKtor_utilsTypeInfo, FlowKtor_client_coreHttpClientCallCompanion, FlowKtor_httpUrlCompanion, FlowKtor_httpURLProtocol, FlowKtor_httpHttpMethodCompanion, FlowKtor_httpContentType, FlowKotlinCancellationException, FlowKtor_httpHttpStatusCodeCompanion, FlowKtor_utilsGMTDateCompanion, FlowKtor_utilsWeekDay, FlowKtor_utilsMonth, FlowKtor_httpHttpProtocolVersionCompanion, FlowKotlinAbstractCoroutineContextKey, FlowKtor_ioMemory, FlowKtor_ioChunkBuffer, FlowKtor_ioBuffer, FlowKtor_ioByteReadPacket, FlowKtor_utilsStringValuesBuilderImpl, FlowKtor_httpURLBuilderCompanion, FlowKtor_httpURLProtocolCompanion, FlowKtor_httpHeaderValueParam, FlowKtor_httpHeaderValueWithParametersCompanion, FlowKtor_httpHeaderValueWithParameters, FlowKtor_httpContentTypeCompanion, FlowKtor_utilsWeekDayCompanion, FlowKtor_utilsMonthCompanion, FlowKtor_ioMemoryCompanion, FlowKtor_ioBufferCompanion, FlowKtor_ioChunkBufferCompanion, FlowKtor_ioInputCompanion, FlowKtor_ioInput, FlowKtor_ioByteReadPacketCompanion, FlowKotlinKTypeProjection, FlowKotlinx_coroutines_coreAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp, FlowKotlinKVariance, FlowKotlinKTypeProjectionCompanion, FlowKotlinx_coroutines_coreAtomicOp<__contravariant T>, FlowKotlinx_coroutines_coreOpDescriptor, FlowKotlinx_coroutines_coreLockFreeLinkedListNode, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc; -@protocol FlowChainIdProvider, FlowKotlinx_serialization_coreEncoder, FlowKotlinx_serialization_coreSerialDescriptor, FlowKotlinx_serialization_coreSerializationStrategy, FlowKotlinx_serialization_coreDecoder, FlowKotlinx_serialization_coreDeserializationStrategy, FlowKotlinx_serialization_coreKSerializer, FlowKotlinComparable, FlowBignumBigNumber, FlowBignumBigNumberCreator, FlowBignumBitwiseCapable, FlowBignumByteArraySerializable, FlowKotlinIterator, FlowKotlinCoroutineContext, FlowKotlinx_coroutines_coreCoroutineScope, FlowKtor_ioCloseable, FlowKtor_client_coreHttpClientEngine, FlowKtor_client_coreHttpClientEngineCapability, FlowKtor_utilsAttributes, FlowKotlinx_serialization_coreCompositeEncoder, FlowKotlinAnnotation, FlowKotlinx_serialization_coreCompositeDecoder, FlowKotlinx_serialization_coreSerialFormat, FlowKotlinx_serialization_coreStringFormat, FlowBignumBigNumberUtil, FlowBignumByteArrayDeserializable, FlowKotlinClosedRange, FlowKotlinIterable, FlowKotlinCoroutineContextElement, FlowKotlinCoroutineContextKey, FlowKtor_client_coreHttpClientPlugin, FlowKotlinx_coroutines_coreDisposableHandle, FlowKotlinSuspendFunction2, FlowKotlinx_serialization_coreSerializersModuleCollector, FlowKotlinKClass, FlowKtor_httpHeaders, FlowKotlinx_coroutines_coreJob, FlowKotlinContinuation, FlowKotlinContinuationInterceptor, FlowKotlinx_coroutines_coreRunnable, FlowKotlinFunction, FlowKtor_httpHttpMessage, FlowKtor_ioByteReadChannel, FlowKtor_httpHttpMessageBuilder, FlowKtor_client_coreHttpRequest, FlowKotlinKDeclarationContainer, FlowKotlinKAnnotatedElement, FlowKotlinKClassifier, FlowKtor_httpParameters, FlowKotlinMapEntry, FlowKtor_utilsStringValues, FlowKotlinx_coroutines_coreChildHandle, FlowKotlinx_coroutines_coreChildJob, FlowKotlinSequence, FlowKotlinx_coroutines_coreSelectClause0, FlowKtor_ioReadSession, FlowKotlinSuspendFunction1, FlowKotlinAppendable, FlowKtor_utilsStringValuesBuilder, FlowKtor_httpParametersBuilder, FlowKotlinKType, FlowKotlinx_coroutines_coreParentJob, FlowKotlinx_coroutines_coreSelectInstance, FlowKotlinSuspendFunction0, FlowKtor_ioObjectPool; +@protocol FlowChainIdProvider, FlowKotlinx_serialization_coreEncoder, FlowKotlinx_serialization_coreSerialDescriptor, FlowKotlinx_serialization_coreSerializationStrategy, FlowKotlinx_serialization_coreDecoder, FlowKotlinx_serialization_coreDeserializationStrategy, FlowKotlinx_serialization_coreKSerializer, FlowKotlinComparable, FlowKotlinComparator, FlowSigner, FlowBignumBigNumber, FlowBignumBigNumberCreator, FlowBignumBitwiseCapable, FlowBignumByteArraySerializable, FlowKotlinIterator, FlowKotlinCoroutineContext, FlowKotlinx_coroutines_coreCoroutineScope, FlowKtor_ioCloseable, FlowKtor_client_coreHttpClientEngine, FlowKtor_client_coreHttpClientEngineCapability, FlowKtor_utilsAttributes, FlowKotlinx_serialization_coreCompositeEncoder, FlowKotlinAnnotation, FlowKotlinx_serialization_coreCompositeDecoder, FlowKotlinx_serialization_coreSerialFormat, FlowKotlinx_serialization_coreStringFormat, FlowBignumBigNumberUtil, FlowBignumByteArrayDeserializable, FlowKotlinClosedRange, FlowKotlinIterable, FlowKotlinCoroutineContextElement, FlowKotlinCoroutineContextKey, FlowKtor_client_coreHttpClientPlugin, FlowKotlinx_coroutines_coreDisposableHandle, FlowKotlinSuspendFunction2, FlowKotlinx_serialization_coreSerializersModuleCollector, FlowKotlinKClass, FlowKtor_httpHeaders, FlowKotlinx_coroutines_coreJob, FlowKotlinContinuation, FlowKotlinContinuationInterceptor, FlowKotlinx_coroutines_coreRunnable, FlowKotlinFunction, FlowKtor_httpHttpMessage, FlowKtor_ioByteReadChannel, FlowKtor_httpHttpMessageBuilder, FlowKtor_client_coreHttpRequest, FlowKotlinKDeclarationContainer, FlowKotlinKAnnotatedElement, FlowKotlinKClassifier, FlowKtor_httpParameters, FlowKotlinMapEntry, FlowKtor_utilsStringValues, FlowKotlinx_coroutines_coreChildHandle, FlowKotlinx_coroutines_coreChildJob, FlowKotlinSequence, FlowKotlinx_coroutines_coreSelectClause0, FlowKtor_ioReadSession, FlowKotlinSuspendFunction1, FlowKotlinAppendable, FlowKtor_utilsStringValuesBuilder, FlowKtor_httpParametersBuilder, FlowKotlinKType, FlowKotlinx_coroutines_coreParentJob, FlowKotlinx_coroutines_coreSelectInstance, FlowKotlinSuspendFunction0, FlowKtor_ioObjectPool; NS_ASSUME_NONNULL_BEGIN #pragma clang diagnostic push @@ -2207,6 +2207,30 @@ __attribute__((swift_name("CollectionGuarantee.Companion"))) - (id)serializer __attribute__((swift_name("serializer()"))); @end; +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CompareTransactionSignature"))) +@interface FlowCompareTransactionSignature : FlowBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) FlowCompareTransactionSignatureCompanion *companion __attribute__((swift_name("companion"))); +@end; + +__attribute__((swift_name("KotlinComparator"))) +@protocol FlowKotlinComparator +@required +- (int32_t)compareA:(id _Nullable)a b:(id _Nullable)b __attribute__((swift_name("compare(a:b:)"))); +@end; + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CompareTransactionSignature.Companion"))) +@interface FlowCompareTransactionSignatureCompanion : FlowBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowCompareTransactionSignatureCompanion *shared __attribute__((swift_name("shared"))); +- (int32_t)compareA:(FlowTransactionSignature *)a b:(FlowTransactionSignature *)b __attribute__((swift_name("compare(a:b:)"))); +@end; + __attribute__((swift_name("DomainTag"))) @interface FlowDomainTag : FlowBase @property (readonly) FlowKotlinByteArray *bytes __attribute__((swift_name("bytes"))); @@ -2216,12 +2240,10 @@ __attribute__((swift_name("DomainTag"))) __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("DomainTag.AccountProof"))) @interface FlowDomainTagAccountProof : FlowDomainTag -- (instancetype)initWithTag:(NSString *)tag __attribute__((swift_name("init(tag:)"))) __attribute__((objc_designated_initializer)); -- (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowDomainTagAccountProof *)doCopyTag:(NSString *)tag __attribute__((swift_name("doCopy(tag:)"))); -- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); -- (NSUInteger)hash __attribute__((swift_name("hash()"))); -- (NSString *)description __attribute__((swift_name("description()"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)accountProof __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowDomainTagAccountProof *shared __attribute__((swift_name("shared"))); @property (readonly) NSString *tag __attribute__((swift_name("tag"))); @end; @@ -2240,24 +2262,20 @@ __attribute__((swift_name("DomainTag.Custom"))) __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("DomainTag.Transaction"))) @interface FlowDomainTagTransaction : FlowDomainTag -- (instancetype)initWithTag:(NSString *)tag __attribute__((swift_name("init(tag:)"))) __attribute__((objc_designated_initializer)); -- (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowDomainTagTransaction *)doCopyTag:(NSString *)tag __attribute__((swift_name("doCopy(tag:)"))); -- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); -- (NSUInteger)hash __attribute__((swift_name("hash()"))); -- (NSString *)description __attribute__((swift_name("description()"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)transaction __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowDomainTagTransaction *shared __attribute__((swift_name("shared"))); @property (readonly) NSString *tag __attribute__((swift_name("tag"))); @end; __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("DomainTag.User"))) @interface FlowDomainTagUser : FlowDomainTag -- (instancetype)initWithTag:(NSString *)tag __attribute__((swift_name("init(tag:)"))) __attribute__((objc_designated_initializer)); -- (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowDomainTagUser *)doCopyTag:(NSString *)tag __attribute__((swift_name("doCopy(tag:)"))); -- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); -- (NSUInteger)hash __attribute__((swift_name("hash()"))); -- (NSString *)description __attribute__((swift_name("description()"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)user __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowDomainTagUser *shared __attribute__((swift_name("shared"))); @property (readonly) NSString *tag __attribute__((swift_name("tag"))); @end; @@ -2477,6 +2495,19 @@ __attribute__((swift_name("ScriptsPostResponse.Companion"))) - (id)serializer __attribute__((swift_name("serializer()"))); @end; +__attribute__((swift_name("Signer"))) +@protocol FlowSigner +@required + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signBytes:(FlowKotlinByteArray *)bytes completionHandler:(void (^)(FlowKotlinByteArray * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("sign(bytes:completionHandler:)"))); +@property NSString *address __attribute__((swift_name("address"))); +@property int32_t keyIndex __attribute__((swift_name("keyIndex"))); +@end; + __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("SigningAlgorithm"))) @interface FlowSigningAlgorithm : FlowKotlinEnum @@ -2504,6 +2535,18 @@ __attribute__((swift_name("SigningAlgorithm.Companion"))) - (id)serializer __attribute__((swift_name("serializer()"))); @end; +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("StringIntSerializer"))) +@interface FlowStringIntSerializer : FlowBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)stringIntSerializer __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowStringIntSerializer *shared __attribute__((swift_name("shared"))); +- (FlowInt *)deserializeDecoder:(id)decoder __attribute__((swift_name("deserialize(decoder:)"))); +- (void)serializeEncoder:(id)encoder value:(FlowInt *)value __attribute__((swift_name("serialize(encoder:value:)"))); +@property (readonly) id descriptor __attribute__((swift_name("descriptor"))); +@end; + __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("Transaction"))) @interface FlowTransaction : FlowBase @@ -2525,6 +2568,24 @@ __attribute__((swift_name("Transaction"))) - (FlowTransaction *)doCopyId:(NSString * _Nullable)id script:(NSString *)script arguments:(NSArray *)arguments referenceBlockId:(NSString *)referenceBlockId gasLimit:(FlowBignumBigInteger *)gasLimit payer:(NSString *)payer proposalKey:(FlowProposalKey *)proposalKey authorizers:(NSArray *)authorizers payloadSignatures:(NSArray *)payloadSignatures envelopeSignatures:(NSArray *)envelopeSignatures expandable:(FlowTransactionExpandable * _Nullable)expandable result:(FlowTransactionResult * _Nullable)result links:(FlowLinks * _Nullable)links __attribute__((swift_name("doCopy(id:script:arguments:referenceBlockId:gasLimit:payer:proposalKey:authorizers:payloadSignatures:envelopeSignatures:expandable:result:links:)"))); - (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); - (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signSigners:(NSArray> *)signers completionHandler:(void (^)(FlowTransaction * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("sign(signers:completionHandler:)"))); + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signEnvelopeSigners:(NSArray> *)signers completionHandler:(void (^)(FlowTransaction * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("signEnvelope(signers:completionHandler:)"))); + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signPayloadSigners:(NSArray> *)signers completionHandler:(void (^)(FlowTransaction * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("signPayload(signers:completionHandler:)"))); - (NSString *)description __attribute__((swift_name("description()"))); @property (readonly) NSArray *arguments __attribute__((swift_name("arguments"))); @property (readonly) NSArray *authorizers __attribute__((swift_name("authorizers"))); @@ -2642,18 +2703,20 @@ __attribute__((swift_name("TransactionResult.Companion"))) __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("TransactionSignature"))) @interface FlowTransactionSignature : FlowBase -- (instancetype)initWithAddress:(NSString *)address keyIndex:(NSString *)keyIndex signature:(NSString *)signature __attribute__((swift_name("init(address:keyIndex:signature:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithAddress:(NSString *)address keyIndex:(int32_t)keyIndex signature:(NSString *)signature signerIndex:(int32_t)signerIndex __attribute__((swift_name("init(address:keyIndex:signature:signerIndex:)"))) __attribute__((objc_designated_initializer)); @property (class, readonly, getter=companion) FlowTransactionSignatureCompanion *companion __attribute__((swift_name("companion"))); - (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (NSString *)component2 __attribute__((swift_name("component2()"))) __attribute__((deprecated("use corresponding property instead"))); +- (int32_t)component2 __attribute__((swift_name("component2()"))) __attribute__((deprecated("use corresponding property instead"))); - (NSString *)component3 __attribute__((swift_name("component3()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowTransactionSignature *)doCopyAddress:(NSString *)address keyIndex:(NSString *)keyIndex signature:(NSString *)signature __attribute__((swift_name("doCopy(address:keyIndex:signature:)"))); +- (int32_t)component4 __attribute__((swift_name("component4()"))) __attribute__((deprecated("use corresponding property instead"))); +- (FlowTransactionSignature *)doCopyAddress:(NSString *)address keyIndex:(int32_t)keyIndex signature:(NSString *)signature signerIndex:(int32_t)signerIndex __attribute__((swift_name("doCopy(address:keyIndex:signature:signerIndex:)"))); - (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); - (NSUInteger)hash __attribute__((swift_name("hash()"))); - (NSString *)description __attribute__((swift_name("description()"))); @property (readonly) NSString *address __attribute__((swift_name("address"))); -@property (readonly) NSString *keyIndex __attribute__((swift_name("keyIndex"))); +@property (readonly) int32_t keyIndex __attribute__((swift_name("keyIndex"))); @property (readonly) NSString *signature __attribute__((swift_name("signature"))); +@property int32_t signerIndex __attribute__((swift_name("signerIndex"))); @end; __attribute__((objc_subclassing_restricted)) @@ -2723,6 +2786,8 @@ __attribute__((swift_name("KotlinByteArray"))) - (FlowKotlinByteArray *)paddingZeroRightBlockSize:(int32_t)blockSize __attribute__((swift_name("paddingZeroRight(blockSize:)"))); - (FlowKotlinByteArray *)removeLeadingZero __attribute__((swift_name("removeLeadingZero()"))); - (FlowRLPElement *)toRLP __attribute__((swift_name("toRLP()"))); +- (NSString *)toBase64 __attribute__((swift_name("toBase64()"))); +- (NSString *)toHexString __attribute__((swift_name("toHexString()"))); @end; @interface FlowRLPType (Extensions) @@ -2864,6 +2929,7 @@ __attribute__((swift_name("BignumBigInteger"))) @end; @interface FlowTransaction (Extensions) +- (FlowKotlinByteArray *)envelopeMessage __attribute__((swift_name("envelopeMessage()"))); - (NSArray *)payload __attribute__((swift_name("payload()"))); - (FlowKotlinByteArray *)payloadMessage __attribute__((swift_name("payloadMessage()"))); - (FlowRLPElement *)toRLP __attribute__((swift_name("toRLP()"))); diff --git a/flow/swiftpackage/Flow.xcframework/ios-arm64/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow b/flow/swiftpackage/Flow.xcframework/ios-arm64/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow index 6186bdc..ba19651 100644 Binary files a/flow/swiftpackage/Flow.xcframework/ios-arm64/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow and b/flow/swiftpackage/Flow.xcframework/ios-arm64/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow differ diff --git a/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Flow b/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Flow index e6911c1..72163d5 100755 Binary files a/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Flow and b/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Flow differ diff --git a/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Headers/Flow.h b/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Headers/Flow.h index f1bd974..cfb5896 100644 --- a/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Headers/Flow.h +++ b/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/Flow.framework/Headers/Flow.h @@ -6,9 +6,9 @@ #import #import -@class FlowChainId, FlowChainIdCanary, FlowChainIdCustom, FlowChainIdEmulator, FlowChainIdMainnet, FlowChainIdSandboxnet, FlowChainIdTestnet, FlowCadenceValue, FlowAccount, FlowBlock, FlowBlockHeader, FlowCollection, FlowBlockEvents, FlowExecutionResult, FlowTransaction, FlowTransactionResult, FlowKotlinThrowable, FlowKotlinArray, FlowKotlinException, FlowKotlinRuntimeException, FlowKotlinIllegalArgumentException, FlowRLPType, FlowKotlinByteArray, FlowRLPElement, FlowRLPList, FlowApiBaseCompanion, FlowKtor_client_coreHttpClient, FlowBase64ByteArrayCompanion, FlowBase64ByteArray, FlowBigDecimalCadenceSerializer, FlowBignumBigDecimal, FlowBigIntegerCadenceSerializer, FlowBignumBigInteger, FlowByteCadenceSerializer, FlowCadenceCompanion, FlowCadenceType, FlowCadenceCapabilityCompanion, FlowCadenceCapability, FlowCadenceValueAddressValue, FlowCadenceValueArrayValue, FlowCadenceValueBooleanValue, FlowCadenceValueCapabilityValue, FlowCadenceValueContractValue, FlowCadenceCompositeValue, FlowCadenceValueDictionaryValue, FlowCadenceDictionaryFieldEntry, FlowCadenceValueFix64Value, FlowCadenceValueIntValue, FlowCadenceValueInt128Value, FlowCadenceValueInt16Value, FlowCadenceValueInt256Value, FlowCadenceValueInt32Value, FlowCadenceValueInt64Value, FlowCadenceValueInt8Value, FlowCadenceValueOptionalValue, FlowCadenceValuePathValue, FlowCadencePath, FlowCadencePathDomain, FlowCadenceValueStringValue, FlowCadenceValueStructValue, FlowCadenceValueTypeValue, FlowCadenceKind, FlowCadenceTypeEntry, FlowCadenceValueUFix64Value, FlowCadenceValueUIntValue, FlowCadenceValueUInt128Value, FlowCadenceValueUInt16Value, FlowCadenceValueUInt256Value, FlowCadenceValueUInt32Value, FlowCadenceValueUInt64Value, FlowCadenceValueUInt8Value, FlowCadenceValueVoidValue, FlowCadenceValueWord16Value, FlowCadenceValueWord32Value, FlowCadenceValueWord64Value, FlowCadenceValueWord8Value, FlowCadenceCompositeAttributeCompanion, FlowCadenceCompositeAttribute, FlowCadenceCompositeValueCompanion, FlowKotlinPair<__covariant A, __covariant B>, FlowCadenceDictionaryFieldEntryCompanion, FlowCadenceKindCompanion, FlowCadencePathCompanion, FlowKotlinEnumCompanion, FlowKotlinEnum, FlowCadencePathDomainCompanion, FlowCadenceTypeCompanion, FlowCadenceTypeEntryCompanion, FlowCadenceValueCompanion, FlowCadenceValueAddressValueCompanion, FlowCadenceValueArrayValueCompanion, FlowCadenceValueBooleanValueCompanion, FlowCadenceValueCapabilityValueCompanion, FlowKotlinx_serialization_jsonJsonElement, FlowKotlinx_serialization_jsonJson, FlowCadenceValueContractValueCompanion, FlowCadenceValueDictionaryValueCompanion, FlowCadenceValueEnumValueCompanion, FlowCadenceValueEnumValue, FlowCadenceValueEventValueCompanion, FlowCadenceValueEventValue, FlowCadenceValueFix64ValueCompanion, FlowCadenceValueInt128ValueCompanion, FlowCadenceValueInt16ValueCompanion, FlowCadenceValueInt256ValueCompanion, FlowCadenceValueInt32ValueCompanion, FlowCadenceValueInt64ValueCompanion, FlowCadenceValueInt8ValueCompanion, FlowCadenceValueIntValueCompanion, FlowCadenceValueOptionalValueCompanion, FlowCadenceValuePathValueCompanion, FlowCadenceValueResourceValueCompanion, FlowCadenceValueResourceValue, FlowCadenceValueStringValueCompanion, FlowCadenceValueStructValueCompanion, FlowCadenceValueTypeValueCompanion, FlowCadenceValueUFix64ValueCompanion, FlowCadenceValueUInt128ValueCompanion, FlowCadenceValueUInt16ValueCompanion, FlowCadenceValueUInt256ValueCompanion, FlowCadenceValueUInt32ValueCompanion, FlowCadenceValueUInt64ValueCompanion, FlowCadenceValueUInt8ValueCompanion, FlowCadenceValueUIntValueCompanion, FlowKotlinUnit, FlowCadenceValueVoidValueCompanion, FlowCadenceValueWord16ValueCompanion, FlowCadenceValueWord32ValueCompanion, FlowCadenceValueWord64ValueCompanion, FlowCadenceValueWord8ValueCompanion, FlowCadenceTypeSerializer, FlowDoubleCadenceSerializer, FlowFixedPointFormatter, FlowIntCadenceSerializer, FlowLongCadenceSerializer, FlowShortCadenceSerializer, FlowUByteCadenceSerializer, FlowUIntCadenceSerializer, FlowULongCadenceSerializer, FlowUShortCadenceSerializer, FlowAccountExpandable, FlowAccountPublicKey, FlowLinks, FlowAccountCompanion, FlowAccountExpandableCompanion, FlowSigningAlgorithm, FlowHashingAlgorithm, FlowAccountPublicKeyCompanion, FlowAggregatedSignatureCompanion, FlowAggregatedSignature, FlowBase64HexSerializer, FlowBase64UFT8Serializer, FlowBlockExpandable, FlowBlockPayload, FlowBlockCompanion, FlowEvent, FlowBlockEventsCompanion, FlowBlockExpandableCompanion, FlowBlockHeaderCompanion, FlowBlockHeightOneOfCompanion, FlowBlockHeightOneOf, FlowCollectionGuarantee, FlowBlockSeal, FlowBlockPayloadCompanion, FlowBlockSealCompanion, FlowCadenceBase64Serializer, FlowChunkCompanion, FlowChunk, FlowCollectionExpandable, FlowCollectionCompanion, FlowCollectionExpandableCompanion, FlowCollectionGuaranteeCompanion, FlowDomainTag, FlowDomainTagAccountProof, FlowDomainTagCustom, FlowDomainTagTransaction, FlowDomainTagUser, FlowErrorCompanion, FlowError, FlowEventCompanion, FlowExecutionResultCompanion, FlowHashingAlgorithmCompanion, FlowLinksCompanion, FlowProposalKeyCompanion, FlowProposalKey, FlowScriptsPostRequestCompanion, FlowScriptsPostRequest, FlowScriptsPostResponseCompanion, FlowScriptsPostResponse, FlowSigningAlgorithmCompanion, FlowTransactionSignature, FlowTransactionExpandable, FlowTransactionCompanion, FlowTransactionExecutionCompanion, FlowTransactionExecution, FlowTransactionExpandableCompanion, FlowTransactionStatus, FlowTransactionResultCompanion, FlowTransactionSignatureCompanion, FlowTransactionStatusCompanion, FlowFlowApi, FlowKotlinByteIterator, FlowBignumBigIntegerCompanion, FlowBignumBigIntegerQuotientAndRemainder, FlowBignumSign, FlowBignumBigIntegerBigIntegerRange, FlowBignumBigIntegerSqareRootAndRemainder, FlowBignumModularBigInteger, FlowKotlinIllegalStateException, FlowKtor_client_coreHttpClientEngineConfig, FlowKtor_client_coreHttpClientConfig, FlowKtor_eventsEvents, FlowKtor_client_coreHttpReceivePipeline, FlowKtor_client_coreHttpRequestPipeline, FlowKtor_client_coreHttpResponsePipeline, FlowKtor_client_coreHttpSendPipeline, FlowKotlinx_serialization_coreSerializersModule, FlowKotlinx_serialization_coreSerialKind, FlowKotlinNothing, FlowBignumBigDecimalCompanion, FlowBignumDecimalMode, FlowBignumRoundingMode, FlowKotlinx_serialization_jsonJsonElementCompanion, FlowKotlinx_serialization_jsonJsonDefault, FlowKotlinx_serialization_jsonJsonConfiguration, FlowBignumModularBigIntegerCompanion, FlowBignumModularQuotientAndRemainder, FlowKtor_client_coreHttpRequestData, FlowKtor_client_coreHttpResponseData, FlowKotlinx_coroutines_coreCoroutineDispatcher, FlowKtor_client_coreProxyConfig, FlowKtor_utilsAttributeKey, FlowKtor_eventsEventDefinition, FlowKtor_utilsPipelinePhase, FlowKtor_utilsPipeline, FlowKtor_client_coreHttpReceivePipelinePhases, FlowKtor_client_coreHttpResponse, FlowKtor_client_coreHttpRequestPipelinePhases, FlowKtor_client_coreHttpRequestBuilder, FlowKtor_client_coreHttpResponsePipelinePhases, FlowKtor_client_coreHttpResponseContainer, FlowKtor_client_coreHttpClientCall, FlowKtor_client_coreHttpSendPipelinePhases, FlowBignumDecimalModeCompanion, FlowKtor_httpUrl, FlowKtor_httpHttpMethod, FlowKtor_httpOutgoingContent, FlowKtor_httpHttpStatusCode, FlowKtor_utilsGMTDate, FlowKtor_httpHttpProtocolVersion, FlowKotlinAbstractCoroutineContextElement, FlowKotlinx_coroutines_coreCoroutineDispatcherKey, FlowKtor_httpHeadersBuilder, FlowKtor_client_coreHttpRequestBuilderCompanion, FlowKtor_httpURLBuilder, FlowKtor_utilsTypeInfo, FlowKtor_client_coreHttpClientCallCompanion, FlowKtor_httpUrlCompanion, FlowKtor_httpURLProtocol, FlowKtor_httpHttpMethodCompanion, FlowKtor_httpContentType, FlowKotlinCancellationException, FlowKtor_httpHttpStatusCodeCompanion, FlowKtor_utilsGMTDateCompanion, FlowKtor_utilsWeekDay, FlowKtor_utilsMonth, FlowKtor_httpHttpProtocolVersionCompanion, FlowKotlinAbstractCoroutineContextKey, FlowKtor_ioMemory, FlowKtor_ioChunkBuffer, FlowKtor_ioBuffer, FlowKtor_ioByteReadPacket, FlowKtor_utilsStringValuesBuilderImpl, FlowKtor_httpURLBuilderCompanion, FlowKtor_httpURLProtocolCompanion, FlowKtor_httpHeaderValueParam, FlowKtor_httpHeaderValueWithParametersCompanion, FlowKtor_httpHeaderValueWithParameters, FlowKtor_httpContentTypeCompanion, FlowKtor_utilsWeekDayCompanion, FlowKtor_utilsMonthCompanion, FlowKtor_ioMemoryCompanion, FlowKtor_ioBufferCompanion, FlowKtor_ioChunkBufferCompanion, FlowKtor_ioInputCompanion, FlowKtor_ioInput, FlowKtor_ioByteReadPacketCompanion, FlowKotlinKTypeProjection, FlowKotlinx_coroutines_coreAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp, FlowKotlinKVariance, FlowKotlinKTypeProjectionCompanion, FlowKotlinx_coroutines_coreAtomicOp<__contravariant T>, FlowKotlinx_coroutines_coreOpDescriptor, FlowKotlinx_coroutines_coreLockFreeLinkedListNode, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc; +@class FlowChainId, FlowChainIdCanary, FlowChainIdCustom, FlowChainIdEmulator, FlowChainIdMainnet, FlowChainIdSandboxnet, FlowChainIdTestnet, FlowCadenceValue, FlowAccount, FlowBlock, FlowBlockHeader, FlowCollection, FlowBlockEvents, FlowExecutionResult, FlowTransaction, FlowTransactionResult, FlowKotlinThrowable, FlowKotlinArray, FlowKotlinException, FlowKotlinRuntimeException, FlowKotlinIllegalArgumentException, FlowRLPType, FlowKotlinByteArray, FlowRLPElement, FlowRLPList, FlowApiBaseCompanion, FlowKtor_client_coreHttpClient, FlowBase64ByteArrayCompanion, FlowBase64ByteArray, FlowBigDecimalCadenceSerializer, FlowBignumBigDecimal, FlowBigIntegerCadenceSerializer, FlowBignumBigInteger, FlowByteCadenceSerializer, FlowCadenceCompanion, FlowCadenceType, FlowCadenceCapabilityCompanion, FlowCadenceCapability, FlowCadenceValueAddressValue, FlowCadenceValueArrayValue, FlowCadenceValueBooleanValue, FlowCadenceValueCapabilityValue, FlowCadenceValueContractValue, FlowCadenceCompositeValue, FlowCadenceValueDictionaryValue, FlowCadenceDictionaryFieldEntry, FlowCadenceValueFix64Value, FlowCadenceValueIntValue, FlowCadenceValueInt128Value, FlowCadenceValueInt16Value, FlowCadenceValueInt256Value, FlowCadenceValueInt32Value, FlowCadenceValueInt64Value, FlowCadenceValueInt8Value, FlowCadenceValueOptionalValue, FlowCadenceValuePathValue, FlowCadencePath, FlowCadencePathDomain, FlowCadenceValueStringValue, FlowCadenceValueStructValue, FlowCadenceValueTypeValue, FlowCadenceKind, FlowCadenceTypeEntry, FlowCadenceValueUFix64Value, FlowCadenceValueUIntValue, FlowCadenceValueUInt128Value, FlowCadenceValueUInt16Value, FlowCadenceValueUInt256Value, FlowCadenceValueUInt32Value, FlowCadenceValueUInt64Value, FlowCadenceValueUInt8Value, FlowCadenceValueVoidValue, FlowCadenceValueWord16Value, FlowCadenceValueWord32Value, FlowCadenceValueWord64Value, FlowCadenceValueWord8Value, FlowCadenceCompositeAttributeCompanion, FlowCadenceCompositeAttribute, FlowCadenceCompositeValueCompanion, FlowKotlinPair<__covariant A, __covariant B>, FlowCadenceDictionaryFieldEntryCompanion, FlowCadenceKindCompanion, FlowCadencePathCompanion, FlowKotlinEnumCompanion, FlowKotlinEnum, FlowCadencePathDomainCompanion, FlowCadenceTypeCompanion, FlowCadenceTypeEntryCompanion, FlowCadenceValueCompanion, FlowCadenceValueAddressValueCompanion, FlowCadenceValueArrayValueCompanion, FlowCadenceValueBooleanValueCompanion, FlowCadenceValueCapabilityValueCompanion, FlowKotlinx_serialization_jsonJsonElement, FlowKotlinx_serialization_jsonJson, FlowCadenceValueContractValueCompanion, FlowCadenceValueDictionaryValueCompanion, FlowCadenceValueEnumValueCompanion, FlowCadenceValueEnumValue, FlowCadenceValueEventValueCompanion, FlowCadenceValueEventValue, FlowCadenceValueFix64ValueCompanion, FlowCadenceValueInt128ValueCompanion, FlowCadenceValueInt16ValueCompanion, FlowCadenceValueInt256ValueCompanion, FlowCadenceValueInt32ValueCompanion, FlowCadenceValueInt64ValueCompanion, FlowCadenceValueInt8ValueCompanion, FlowCadenceValueIntValueCompanion, FlowCadenceValueOptionalValueCompanion, FlowCadenceValuePathValueCompanion, FlowCadenceValueResourceValueCompanion, FlowCadenceValueResourceValue, FlowCadenceValueStringValueCompanion, FlowCadenceValueStructValueCompanion, FlowCadenceValueTypeValueCompanion, FlowCadenceValueUFix64ValueCompanion, FlowCadenceValueUInt128ValueCompanion, FlowCadenceValueUInt16ValueCompanion, FlowCadenceValueUInt256ValueCompanion, FlowCadenceValueUInt32ValueCompanion, FlowCadenceValueUInt64ValueCompanion, FlowCadenceValueUInt8ValueCompanion, FlowCadenceValueUIntValueCompanion, FlowKotlinUnit, FlowCadenceValueVoidValueCompanion, FlowCadenceValueWord16ValueCompanion, FlowCadenceValueWord32ValueCompanion, FlowCadenceValueWord64ValueCompanion, FlowCadenceValueWord8ValueCompanion, FlowCadenceTypeSerializer, FlowDoubleCadenceSerializer, FlowFixedPointFormatter, FlowIntCadenceSerializer, FlowLongCadenceSerializer, FlowShortCadenceSerializer, FlowUByteCadenceSerializer, FlowUIntCadenceSerializer, FlowULongCadenceSerializer, FlowUShortCadenceSerializer, FlowAccountExpandable, FlowAccountPublicKey, FlowLinks, FlowAccountCompanion, FlowAccountExpandableCompanion, FlowSigningAlgorithm, FlowHashingAlgorithm, FlowAccountPublicKeyCompanion, FlowAggregatedSignatureCompanion, FlowAggregatedSignature, FlowBase64HexSerializer, FlowBase64UFT8Serializer, FlowBlockExpandable, FlowBlockPayload, FlowBlockCompanion, FlowEvent, FlowBlockEventsCompanion, FlowBlockExpandableCompanion, FlowBlockHeaderCompanion, FlowBlockHeightOneOfCompanion, FlowBlockHeightOneOf, FlowCollectionGuarantee, FlowBlockSeal, FlowBlockPayloadCompanion, FlowBlockSealCompanion, FlowCadenceBase64Serializer, FlowChunkCompanion, FlowChunk, FlowCollectionExpandable, FlowCollectionCompanion, FlowCollectionExpandableCompanion, FlowCollectionGuaranteeCompanion, FlowCompareTransactionSignatureCompanion, FlowTransactionSignature, FlowDomainTag, FlowDomainTagAccountProof, FlowDomainTagCustom, FlowDomainTagTransaction, FlowDomainTagUser, FlowErrorCompanion, FlowError, FlowEventCompanion, FlowExecutionResultCompanion, FlowHashingAlgorithmCompanion, FlowLinksCompanion, FlowProposalKeyCompanion, FlowProposalKey, FlowScriptsPostRequestCompanion, FlowScriptsPostRequest, FlowScriptsPostResponseCompanion, FlowScriptsPostResponse, FlowSigningAlgorithmCompanion, FlowStringIntSerializer, FlowTransactionExpandable, FlowTransactionCompanion, FlowTransactionExecutionCompanion, FlowTransactionExecution, FlowTransactionExpandableCompanion, FlowTransactionStatus, FlowTransactionResultCompanion, FlowTransactionSignatureCompanion, FlowTransactionStatusCompanion, FlowFlowApi, FlowKotlinByteIterator, FlowBignumBigIntegerCompanion, FlowBignumBigIntegerQuotientAndRemainder, FlowBignumSign, FlowBignumBigIntegerBigIntegerRange, FlowBignumBigIntegerSqareRootAndRemainder, FlowBignumModularBigInteger, FlowKotlinIllegalStateException, FlowKtor_client_coreHttpClientEngineConfig, FlowKtor_client_coreHttpClientConfig, FlowKtor_eventsEvents, FlowKtor_client_coreHttpReceivePipeline, FlowKtor_client_coreHttpRequestPipeline, FlowKtor_client_coreHttpResponsePipeline, FlowKtor_client_coreHttpSendPipeline, FlowKotlinx_serialization_coreSerializersModule, FlowKotlinx_serialization_coreSerialKind, FlowKotlinNothing, FlowBignumBigDecimalCompanion, FlowBignumDecimalMode, FlowBignumRoundingMode, FlowKotlinx_serialization_jsonJsonElementCompanion, FlowKotlinx_serialization_jsonJsonDefault, FlowKotlinx_serialization_jsonJsonConfiguration, FlowBignumModularBigIntegerCompanion, FlowBignumModularQuotientAndRemainder, FlowKtor_client_coreHttpRequestData, FlowKtor_client_coreHttpResponseData, FlowKotlinx_coroutines_coreCoroutineDispatcher, FlowKtor_client_coreProxyConfig, FlowKtor_utilsAttributeKey, FlowKtor_eventsEventDefinition, FlowKtor_utilsPipelinePhase, FlowKtor_utilsPipeline, FlowKtor_client_coreHttpReceivePipelinePhases, FlowKtor_client_coreHttpResponse, FlowKtor_client_coreHttpRequestPipelinePhases, FlowKtor_client_coreHttpRequestBuilder, FlowKtor_client_coreHttpResponsePipelinePhases, FlowKtor_client_coreHttpResponseContainer, FlowKtor_client_coreHttpClientCall, FlowKtor_client_coreHttpSendPipelinePhases, FlowBignumDecimalModeCompanion, FlowKtor_httpUrl, FlowKtor_httpHttpMethod, FlowKtor_httpOutgoingContent, FlowKtor_httpHttpStatusCode, FlowKtor_utilsGMTDate, FlowKtor_httpHttpProtocolVersion, FlowKotlinAbstractCoroutineContextElement, FlowKotlinx_coroutines_coreCoroutineDispatcherKey, FlowKtor_httpHeadersBuilder, FlowKtor_client_coreHttpRequestBuilderCompanion, FlowKtor_httpURLBuilder, FlowKtor_utilsTypeInfo, FlowKtor_client_coreHttpClientCallCompanion, FlowKtor_httpUrlCompanion, FlowKtor_httpURLProtocol, FlowKtor_httpHttpMethodCompanion, FlowKtor_httpContentType, FlowKotlinCancellationException, FlowKtor_httpHttpStatusCodeCompanion, FlowKtor_utilsGMTDateCompanion, FlowKtor_utilsWeekDay, FlowKtor_utilsMonth, FlowKtor_httpHttpProtocolVersionCompanion, FlowKotlinAbstractCoroutineContextKey, FlowKtor_ioMemory, FlowKtor_ioChunkBuffer, FlowKtor_ioBuffer, FlowKtor_ioByteReadPacket, FlowKtor_utilsStringValuesBuilderImpl, FlowKtor_httpURLBuilderCompanion, FlowKtor_httpURLProtocolCompanion, FlowKtor_httpHeaderValueParam, FlowKtor_httpHeaderValueWithParametersCompanion, FlowKtor_httpHeaderValueWithParameters, FlowKtor_httpContentTypeCompanion, FlowKtor_utilsWeekDayCompanion, FlowKtor_utilsMonthCompanion, FlowKtor_ioMemoryCompanion, FlowKtor_ioBufferCompanion, FlowKtor_ioChunkBufferCompanion, FlowKtor_ioInputCompanion, FlowKtor_ioInput, FlowKtor_ioByteReadPacketCompanion, FlowKotlinKTypeProjection, FlowKotlinx_coroutines_coreAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp, FlowKotlinKVariance, FlowKotlinKTypeProjectionCompanion, FlowKotlinx_coroutines_coreAtomicOp<__contravariant T>, FlowKotlinx_coroutines_coreOpDescriptor, FlowKotlinx_coroutines_coreLockFreeLinkedListNode, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc, FlowKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc; -@protocol FlowChainIdProvider, FlowKotlinx_serialization_coreEncoder, FlowKotlinx_serialization_coreSerialDescriptor, FlowKotlinx_serialization_coreSerializationStrategy, FlowKotlinx_serialization_coreDecoder, FlowKotlinx_serialization_coreDeserializationStrategy, FlowKotlinx_serialization_coreKSerializer, FlowKotlinComparable, FlowBignumBigNumber, FlowBignumBigNumberCreator, FlowBignumBitwiseCapable, FlowBignumByteArraySerializable, FlowKotlinIterator, FlowKotlinCoroutineContext, FlowKotlinx_coroutines_coreCoroutineScope, FlowKtor_ioCloseable, FlowKtor_client_coreHttpClientEngine, FlowKtor_client_coreHttpClientEngineCapability, FlowKtor_utilsAttributes, FlowKotlinx_serialization_coreCompositeEncoder, FlowKotlinAnnotation, FlowKotlinx_serialization_coreCompositeDecoder, FlowKotlinx_serialization_coreSerialFormat, FlowKotlinx_serialization_coreStringFormat, FlowBignumBigNumberUtil, FlowBignumByteArrayDeserializable, FlowKotlinClosedRange, FlowKotlinIterable, FlowKotlinCoroutineContextElement, FlowKotlinCoroutineContextKey, FlowKtor_client_coreHttpClientPlugin, FlowKotlinx_coroutines_coreDisposableHandle, FlowKotlinSuspendFunction2, FlowKotlinx_serialization_coreSerializersModuleCollector, FlowKotlinKClass, FlowKtor_httpHeaders, FlowKotlinx_coroutines_coreJob, FlowKotlinContinuation, FlowKotlinContinuationInterceptor, FlowKotlinx_coroutines_coreRunnable, FlowKotlinFunction, FlowKtor_httpHttpMessage, FlowKtor_ioByteReadChannel, FlowKtor_httpHttpMessageBuilder, FlowKtor_client_coreHttpRequest, FlowKotlinKDeclarationContainer, FlowKotlinKAnnotatedElement, FlowKotlinKClassifier, FlowKtor_httpParameters, FlowKotlinMapEntry, FlowKtor_utilsStringValues, FlowKotlinx_coroutines_coreChildHandle, FlowKotlinx_coroutines_coreChildJob, FlowKotlinSequence, FlowKotlinx_coroutines_coreSelectClause0, FlowKtor_ioReadSession, FlowKotlinSuspendFunction1, FlowKotlinAppendable, FlowKtor_utilsStringValuesBuilder, FlowKtor_httpParametersBuilder, FlowKotlinKType, FlowKotlinx_coroutines_coreParentJob, FlowKotlinx_coroutines_coreSelectInstance, FlowKotlinSuspendFunction0, FlowKtor_ioObjectPool; +@protocol FlowChainIdProvider, FlowKotlinx_serialization_coreEncoder, FlowKotlinx_serialization_coreSerialDescriptor, FlowKotlinx_serialization_coreSerializationStrategy, FlowKotlinx_serialization_coreDecoder, FlowKotlinx_serialization_coreDeserializationStrategy, FlowKotlinx_serialization_coreKSerializer, FlowKotlinComparable, FlowKotlinComparator, FlowSigner, FlowBignumBigNumber, FlowBignumBigNumberCreator, FlowBignumBitwiseCapable, FlowBignumByteArraySerializable, FlowKotlinIterator, FlowKotlinCoroutineContext, FlowKotlinx_coroutines_coreCoroutineScope, FlowKtor_ioCloseable, FlowKtor_client_coreHttpClientEngine, FlowKtor_client_coreHttpClientEngineCapability, FlowKtor_utilsAttributes, FlowKotlinx_serialization_coreCompositeEncoder, FlowKotlinAnnotation, FlowKotlinx_serialization_coreCompositeDecoder, FlowKotlinx_serialization_coreSerialFormat, FlowKotlinx_serialization_coreStringFormat, FlowBignumBigNumberUtil, FlowBignumByteArrayDeserializable, FlowKotlinClosedRange, FlowKotlinIterable, FlowKotlinCoroutineContextElement, FlowKotlinCoroutineContextKey, FlowKtor_client_coreHttpClientPlugin, FlowKotlinx_coroutines_coreDisposableHandle, FlowKotlinSuspendFunction2, FlowKotlinx_serialization_coreSerializersModuleCollector, FlowKotlinKClass, FlowKtor_httpHeaders, FlowKotlinx_coroutines_coreJob, FlowKotlinContinuation, FlowKotlinContinuationInterceptor, FlowKotlinx_coroutines_coreRunnable, FlowKotlinFunction, FlowKtor_httpHttpMessage, FlowKtor_ioByteReadChannel, FlowKtor_httpHttpMessageBuilder, FlowKtor_client_coreHttpRequest, FlowKotlinKDeclarationContainer, FlowKotlinKAnnotatedElement, FlowKotlinKClassifier, FlowKtor_httpParameters, FlowKotlinMapEntry, FlowKtor_utilsStringValues, FlowKotlinx_coroutines_coreChildHandle, FlowKotlinx_coroutines_coreChildJob, FlowKotlinSequence, FlowKotlinx_coroutines_coreSelectClause0, FlowKtor_ioReadSession, FlowKotlinSuspendFunction1, FlowKotlinAppendable, FlowKtor_utilsStringValuesBuilder, FlowKtor_httpParametersBuilder, FlowKotlinKType, FlowKotlinx_coroutines_coreParentJob, FlowKotlinx_coroutines_coreSelectInstance, FlowKotlinSuspendFunction0, FlowKtor_ioObjectPool; NS_ASSUME_NONNULL_BEGIN #pragma clang diagnostic push @@ -2207,6 +2207,30 @@ __attribute__((swift_name("CollectionGuarantee.Companion"))) - (id)serializer __attribute__((swift_name("serializer()"))); @end; +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CompareTransactionSignature"))) +@interface FlowCompareTransactionSignature : FlowBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) FlowCompareTransactionSignatureCompanion *companion __attribute__((swift_name("companion"))); +@end; + +__attribute__((swift_name("KotlinComparator"))) +@protocol FlowKotlinComparator +@required +- (int32_t)compareA:(id _Nullable)a b:(id _Nullable)b __attribute__((swift_name("compare(a:b:)"))); +@end; + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CompareTransactionSignature.Companion"))) +@interface FlowCompareTransactionSignatureCompanion : FlowBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowCompareTransactionSignatureCompanion *shared __attribute__((swift_name("shared"))); +- (int32_t)compareA:(FlowTransactionSignature *)a b:(FlowTransactionSignature *)b __attribute__((swift_name("compare(a:b:)"))); +@end; + __attribute__((swift_name("DomainTag"))) @interface FlowDomainTag : FlowBase @property (readonly) FlowKotlinByteArray *bytes __attribute__((swift_name("bytes"))); @@ -2216,12 +2240,10 @@ __attribute__((swift_name("DomainTag"))) __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("DomainTag.AccountProof"))) @interface FlowDomainTagAccountProof : FlowDomainTag -- (instancetype)initWithTag:(NSString *)tag __attribute__((swift_name("init(tag:)"))) __attribute__((objc_designated_initializer)); -- (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowDomainTagAccountProof *)doCopyTag:(NSString *)tag __attribute__((swift_name("doCopy(tag:)"))); -- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); -- (NSUInteger)hash __attribute__((swift_name("hash()"))); -- (NSString *)description __attribute__((swift_name("description()"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)accountProof __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowDomainTagAccountProof *shared __attribute__((swift_name("shared"))); @property (readonly) NSString *tag __attribute__((swift_name("tag"))); @end; @@ -2240,24 +2262,20 @@ __attribute__((swift_name("DomainTag.Custom"))) __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("DomainTag.Transaction"))) @interface FlowDomainTagTransaction : FlowDomainTag -- (instancetype)initWithTag:(NSString *)tag __attribute__((swift_name("init(tag:)"))) __attribute__((objc_designated_initializer)); -- (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowDomainTagTransaction *)doCopyTag:(NSString *)tag __attribute__((swift_name("doCopy(tag:)"))); -- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); -- (NSUInteger)hash __attribute__((swift_name("hash()"))); -- (NSString *)description __attribute__((swift_name("description()"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)transaction __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowDomainTagTransaction *shared __attribute__((swift_name("shared"))); @property (readonly) NSString *tag __attribute__((swift_name("tag"))); @end; __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("DomainTag.User"))) @interface FlowDomainTagUser : FlowDomainTag -- (instancetype)initWithTag:(NSString *)tag __attribute__((swift_name("init(tag:)"))) __attribute__((objc_designated_initializer)); -- (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowDomainTagUser *)doCopyTag:(NSString *)tag __attribute__((swift_name("doCopy(tag:)"))); -- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); -- (NSUInteger)hash __attribute__((swift_name("hash()"))); -- (NSString *)description __attribute__((swift_name("description()"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)user __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowDomainTagUser *shared __attribute__((swift_name("shared"))); @property (readonly) NSString *tag __attribute__((swift_name("tag"))); @end; @@ -2477,6 +2495,19 @@ __attribute__((swift_name("ScriptsPostResponse.Companion"))) - (id)serializer __attribute__((swift_name("serializer()"))); @end; +__attribute__((swift_name("Signer"))) +@protocol FlowSigner +@required + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signBytes:(FlowKotlinByteArray *)bytes completionHandler:(void (^)(FlowKotlinByteArray * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("sign(bytes:completionHandler:)"))); +@property NSString *address __attribute__((swift_name("address"))); +@property int32_t keyIndex __attribute__((swift_name("keyIndex"))); +@end; + __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("SigningAlgorithm"))) @interface FlowSigningAlgorithm : FlowKotlinEnum @@ -2504,6 +2535,18 @@ __attribute__((swift_name("SigningAlgorithm.Companion"))) - (id)serializer __attribute__((swift_name("serializer()"))); @end; +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("StringIntSerializer"))) +@interface FlowStringIntSerializer : FlowBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)stringIntSerializer __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) FlowStringIntSerializer *shared __attribute__((swift_name("shared"))); +- (FlowInt *)deserializeDecoder:(id)decoder __attribute__((swift_name("deserialize(decoder:)"))); +- (void)serializeEncoder:(id)encoder value:(FlowInt *)value __attribute__((swift_name("serialize(encoder:value:)"))); +@property (readonly) id descriptor __attribute__((swift_name("descriptor"))); +@end; + __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("Transaction"))) @interface FlowTransaction : FlowBase @@ -2525,6 +2568,24 @@ __attribute__((swift_name("Transaction"))) - (FlowTransaction *)doCopyId:(NSString * _Nullable)id script:(NSString *)script arguments:(NSArray *)arguments referenceBlockId:(NSString *)referenceBlockId gasLimit:(FlowBignumBigInteger *)gasLimit payer:(NSString *)payer proposalKey:(FlowProposalKey *)proposalKey authorizers:(NSArray *)authorizers payloadSignatures:(NSArray *)payloadSignatures envelopeSignatures:(NSArray *)envelopeSignatures expandable:(FlowTransactionExpandable * _Nullable)expandable result:(FlowTransactionResult * _Nullable)result links:(FlowLinks * _Nullable)links __attribute__((swift_name("doCopy(id:script:arguments:referenceBlockId:gasLimit:payer:proposalKey:authorizers:payloadSignatures:envelopeSignatures:expandable:result:links:)"))); - (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); - (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signSigners:(NSArray> *)signers completionHandler:(void (^)(FlowTransaction * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("sign(signers:completionHandler:)"))); + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signEnvelopeSigners:(NSArray> *)signers completionHandler:(void (^)(FlowTransaction * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("signEnvelope(signers:completionHandler:)"))); + +/** + @note This method converts instances of CancellationException to errors. + Other uncaught Kotlin exceptions are fatal. +*/ +- (void)signPayloadSigners:(NSArray> *)signers completionHandler:(void (^)(FlowTransaction * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("signPayload(signers:completionHandler:)"))); - (NSString *)description __attribute__((swift_name("description()"))); @property (readonly) NSArray *arguments __attribute__((swift_name("arguments"))); @property (readonly) NSArray *authorizers __attribute__((swift_name("authorizers"))); @@ -2642,18 +2703,20 @@ __attribute__((swift_name("TransactionResult.Companion"))) __attribute__((objc_subclassing_restricted)) __attribute__((swift_name("TransactionSignature"))) @interface FlowTransactionSignature : FlowBase -- (instancetype)initWithAddress:(NSString *)address keyIndex:(NSString *)keyIndex signature:(NSString *)signature __attribute__((swift_name("init(address:keyIndex:signature:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithAddress:(NSString *)address keyIndex:(int32_t)keyIndex signature:(NSString *)signature signerIndex:(int32_t)signerIndex __attribute__((swift_name("init(address:keyIndex:signature:signerIndex:)"))) __attribute__((objc_designated_initializer)); @property (class, readonly, getter=companion) FlowTransactionSignatureCompanion *companion __attribute__((swift_name("companion"))); - (NSString *)component1 __attribute__((swift_name("component1()"))) __attribute__((deprecated("use corresponding property instead"))); -- (NSString *)component2 __attribute__((swift_name("component2()"))) __attribute__((deprecated("use corresponding property instead"))); +- (int32_t)component2 __attribute__((swift_name("component2()"))) __attribute__((deprecated("use corresponding property instead"))); - (NSString *)component3 __attribute__((swift_name("component3()"))) __attribute__((deprecated("use corresponding property instead"))); -- (FlowTransactionSignature *)doCopyAddress:(NSString *)address keyIndex:(NSString *)keyIndex signature:(NSString *)signature __attribute__((swift_name("doCopy(address:keyIndex:signature:)"))); +- (int32_t)component4 __attribute__((swift_name("component4()"))) __attribute__((deprecated("use corresponding property instead"))); +- (FlowTransactionSignature *)doCopyAddress:(NSString *)address keyIndex:(int32_t)keyIndex signature:(NSString *)signature signerIndex:(int32_t)signerIndex __attribute__((swift_name("doCopy(address:keyIndex:signature:signerIndex:)"))); - (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); - (NSUInteger)hash __attribute__((swift_name("hash()"))); - (NSString *)description __attribute__((swift_name("description()"))); @property (readonly) NSString *address __attribute__((swift_name("address"))); -@property (readonly) NSString *keyIndex __attribute__((swift_name("keyIndex"))); +@property (readonly) int32_t keyIndex __attribute__((swift_name("keyIndex"))); @property (readonly) NSString *signature __attribute__((swift_name("signature"))); +@property int32_t signerIndex __attribute__((swift_name("signerIndex"))); @end; __attribute__((objc_subclassing_restricted)) @@ -2723,6 +2786,8 @@ __attribute__((swift_name("KotlinByteArray"))) - (FlowKotlinByteArray *)paddingZeroRightBlockSize:(int32_t)blockSize __attribute__((swift_name("paddingZeroRight(blockSize:)"))); - (FlowKotlinByteArray *)removeLeadingZero __attribute__((swift_name("removeLeadingZero()"))); - (FlowRLPElement *)toRLP __attribute__((swift_name("toRLP()"))); +- (NSString *)toBase64 __attribute__((swift_name("toBase64()"))); +- (NSString *)toHexString __attribute__((swift_name("toHexString()"))); @end; @interface FlowRLPType (Extensions) @@ -2864,6 +2929,7 @@ __attribute__((swift_name("BignumBigInteger"))) @end; @interface FlowTransaction (Extensions) +- (FlowKotlinByteArray *)envelopeMessage __attribute__((swift_name("envelopeMessage()"))); - (NSArray *)payload __attribute__((swift_name("payload()"))); - (FlowKotlinByteArray *)payloadMessage __attribute__((swift_name("payloadMessage()"))); - (FlowRLPElement *)toRLP __attribute__((swift_name("toRLP()"))); diff --git a/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow b/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow index dcd4334..64fea70 100644 Binary files a/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow and b/flow/swiftpackage/Flow.xcframework/ios-x86_64-simulator/dSYMs/Flow.framework.dSYM/Contents/Resources/DWARF/Flow differ