From 0b930301d96fdb8c92401c9374310beef4d27136 Mon Sep 17 00:00:00 2001 From: Mateusz Samosij Date: Mon, 12 Aug 2024 17:30:58 +0200 Subject: [PATCH] Fix issue in unsecured connection when device is not detected --- .../data/documentation/tedeelock.json | 2 +- .../tedeelock/how-to-connect-to-the-lock.json | 2 +- .../documentation/tedeelock/tedeeaddlock.json | 2 +- .../tedeeaddlock/activationcode.json | 2 +- .../tedeeaddlock/devicesettings.json | 2 +- .../tedeelock/tedeeaddlock/name.json | 2 +- .../tedeeaddlock/organizationid.json | 2 +- .../tedeelock/tedeeaddlock/revision.json | 2 +- .../tedeelock/tedeeaddlock/serialnumber.json | 2 +- .../tedeelock/tedeeaddlock/signature.json | 2 +- .../tedeeaddlock/softwareversions.json | 2 +- .../tedeelock/tedeeaddlock/timezone.json | 2 +- .../tedeelock/tedeecertificate.json | 2 +- .../tedeecertificate/certificate.json | 2 +- .../tedeecertificate/devicepublickey.json | 2 +- .../tedeelock/tedeecertificate/errors.json | 2 +- .../tedeecertificate/errors/!=(_:_:).json | 2 +- .../errors/equatable-implementations.json | 2 +- .../errors/error-implementations.json | 2 +- .../tedeecertificate/errors/expired.json | 2 +- .../errors/invaliddevicepublickey.json | 2 +- .../errors/invalidmobilepublickey.json | 2 +- .../errors/localizeddescription.json | 2 +- .../tedeecertificate/expirationdate.json | 2 +- ...ate:devicepublickey:mobilepublickey:).json | 2 +- .../tedeecertificate/mobilepublickey.json | 2 +- .../tedeelock/tedeeconnectionstatus.json | 2 +- .../tedeeconnectionstatus/error.json | 2 +- .../tedeeconnectionstatus/serialnumber.json | 2 +- .../status-swift.enum.json | 2 +- .../status-swift.enum/!=(_:_:).json | 2 +- .../status-swift.enum/connected.json | 2 +- .../status-swift.enum/connecting.json | 2 +- .../status-swift.enum/disconnected.json | 2 +- .../equatable-implementations.json | 2 +- .../status-swift.property.json | 2 +- .../tedeelock/tedeedevicesettings.json | 2 +- .../tedeedevicesettings/autolockdelay.json | 2 +- .../tedeedevicesettings/autolockenabled.json | 2 +- .../autolockimplicitdelay.json | 2 +- .../autolockimplicitenabled.json | 2 +- .../autopullspringenabled.json | 2 +- .../buttonlockenabled.json | 2 +- .../buttonunlockenabled.json | 2 +- .../postponedlockdelay.json | 2 +- .../postponedlockenabled.json | 2 +- .../pullspringduration.json | 2 +- .../pullspringenabled.json | 2 +- .../tedeelock/tedeelockmanager.json | 2 +- .../actor-implementations.json | 2 +- .../assertisolated(_:file:line:).json | 2 +- .../assumeisolated(_:file:line:).json | 2 +- .../closelock(_:parameter:).json | 2 +- ...onnect(_:certificate:keepconnection:).json | 2 +- .../connectionstatusstream.json | 2 +- .../tedeelockmanager/disconnect(_:).json | 2 +- .../tedeelock/tedeelockmanager/errors.json | 2 +- .../errors/alreadyconnected.json | 2 +- .../errors/alreadyconnecting.json | 2 +- .../errors/alreadyregistered.json | 2 +- .../errors/cantparseresponse.json | 2 +- .../errors/cantsendcommand.json | 2 +- .../errors/devicenotinitialized.json | 2 +- .../tedeelockmanager/errors/disconnected.json | 2 +- .../errors/error-implementations.json | 2 +- .../errors/invalidcertificate.json | 2 +- .../errors/invalidparameters.json | 2 +- .../errors/invalidresponse.json | 2 +- .../errors/localizeddescription.json | 2 +- .../errors/missingsigneddatetime.json | 2 +- .../tedeelockmanager/errors/nopermission.json | 2 +- .../tedeelockmanager/errors/notconnected.json | 2 +- .../tedeelockmanager/errors/notfound.json | 2 +- .../errors/securesessionfailed.json | 2 +- .../errors/signeddatetimeprovider(_:).json | 2 +- .../errors/systempermissions.json | 2 +- .../errors/waitingforresponse.json | 2 +- .../tedeelockmanager/getaddlockdata(_:).json | 2 +- .../getlocksettings(from:).json | 2 +- .../tedeelockmanager/getlockstate(_:).json | 2 +- .../tedeelockmanager/getversion(from:).json | 2 +- .../tedeelockmanager/isconnected(_:).json | 2 +- .../tedeelockmanager/notificationsstream.json | 2 +- .../openlock(_:parameter:).json | 2 +- .../preconditionisolated(_:file:line:).json | 2 +- .../tedeelock/tedeelockmanager/publickey.json | 2 +- .../tedeelockmanager/pulllock(_:).json | 2 +- .../registerlock(_:registration:).json | 2 +- .../sendcommand(_:command:parameters:).json | 2 +- .../setsigneddatetimeprovider(_:).json | 2 +- .../tedeelock/tedeelockmanager/shared.json | 2 +- .../tedeelockmanager/unsecureconnect(_:).json | 2 +- .../tedeelockoperationparameters.json | 2 +- .../!=(_:_:).json | 2 +- .../tedeelockoperationparameters/auto.json | 2 +- .../autoalwayspull.json | 2 +- .../autoneverpull.json | 2 +- .../autowhenlockedthenpull.json | 2 +- .../autowhenunlockedthenpull.json | 2 +- .../equatable-implementations.json | 2 +- .../tedeelockoperationparameters/force.json | 2 +- .../hash(into:).json | 2 +- .../hashvalue.json | 2 +- .../init(rawvalue:).json | 2 +- .../tedeelockoperationparameters/none.json | 2 +- .../rawrepresentable-implementations.json | 2 +- .../unlockorpull.json | 2 +- .../withoutpull.json | 2 +- .../tedeelock/tedeelockoperationresult.json | 2 +- .../tedeelockoperationresult/!=(_:_:).json | 2 +- .../tedeelockoperationresult/busy.json | 2 +- .../tedeelockoperationresult/dismounted.json | 2 +- .../equatable-implementations.json | 2 +- .../tedeelockoperationresult/error.json | 2 +- .../tedeelockoperationresult/hash(into:).json | 2 +- .../tedeelockoperationresult/hashvalue.json | 2 +- .../init(rawvalue:).json | 2 +- .../invalidparameter.json | 2 +- .../nopermission.json | 2 +- .../notcalibrated.json | 2 +- .../notconfigured.json | 2 +- .../rawrepresentable-implementations.json | 2 +- .../tedeelockoperationresult/success.json | 2 +- .../unlockalreadycalledbyautounlock.json | 2 +- .../unlockalreadycalledbyotheroperation.json | 2 +- .../tedeelock/tedeelockstate.json | 2 +- .../tedeelockstate/state-swift.enum.json | 2 +- .../state-swift.enum/!=(_:_:).json | 2 +- .../state-swift.enum/calibration.json | 2 +- .../equatable-implementations.json | 2 +- .../state-swift.enum/locked.json | 2 +- .../state-swift.enum/locking.json | 2 +- .../state-swift.enum/partiallyunlocked.json | 2 +- .../state-swift.enum/pulling.json | 2 +- .../state-swift.enum/pullspring.json | 2 +- .../state-swift.enum/uncalibrated.json | 2 +- .../state-swift.enum/unknown.json | 2 +- .../state-swift.enum/unlocked.json | 2 +- .../state-swift.enum/unlocking.json | 2 +- .../tedeelockstate/state-swift.property.json | 2 +- .../tedeelock/tedeelockstate/statestatus.json | 2 +- .../tedeelock/tedeelockstate/status.json | 2 +- .../tedeelockstate/status/!=(_:_:).json | 2 +- .../status/equatable-implementations.json | 2 +- .../tedeelockstate/status/jammed.json | 2 +- .../tedeelock/tedeelockstate/status/ok.json | 2 +- .../tedeelock/tedeenotification.json | 2 +- .../notification-swift.enum.json | 2 +- .../notification-swift.enum/generic(_:).json | 2 +- .../lockstate(_:).json | 2 +- .../notification-swift.property.json | 2 +- .../tedeenotification/serialnumber.json | 2 +- .../tedeelock/tedeeregisterlock.json | 2 +- .../tedeeregisterlock/authpublickey.json | 2 +- .../tedeelock/tedeeregisterlock/id.json | 2 +- ...rgetdevicerevision:id:authpublickey:).json | 2 +- .../tedeelock/tedeeregisterlock/revision.json | 2 +- .../targetdevicerevision.json | 2 +- .../tedeelock/tedeeserialnumber.json | 2 +- .../tedeelock/tedeeserialnumber/errors.json | 2 +- .../tedeeserialnumber/errors/!=(_:_:).json | 2 +- .../errors/equatable-implementations.json | 2 +- .../errors/error-implementations.json | 2 +- .../errors/invaliddevicetype.json | 2 +- .../errors/invalidformat.json | 2 +- .../errors/localizeddescription.json | 2 +- .../init(serialnumber:).json | 2 +- .../tedeeserialnumber/serialnumber.json | 2 +- .../tedeelock/tedeesigneddatetime.json | 2 +- .../tedeesigneddatetime/datetime.json | 2 +- .../init(datetime:signature:).json | 2 +- .../tedeesigneddatetime/signature.json | 2 +- .../tedeesigneddatetimeprovider.json | 2 +- .../datetime(for:).json | 2 +- .../tedeelock/tedeesoftwareversion.json | 2 +- .../tedeesoftwareversion/softwaretype.json | 2 +- .../tedeesoftwareversion/version.json | 2 +- .../data/tutorials/how-to-add-lock.json | 2 +- .../data/tutorials/tedeelock/add-lock.json | 2 +- .../tutorials/tedeelock/get-lock-data.json | 2 +- .../data/tutorials/tedeelock/pak-set-up.json | 2 +- .../tutorials/tedeelock/register-lock.json | 2 +- .../tutorials/tedeelock/requirements.json | 2 +- .../tedeelock/secured-connection.json | 2 +- .../data/tutorials/tedeelock/summary.json | 2 +- .../tedeelock/unsecured-connection.json | 2 +- .../index/availability.index | Bin 1110 -> 1110 bytes TedeeLock.doccarchive/index/data.mdb | Bin 229376 -> 229376 bytes TedeeLock.doccarchive/metadata.json | 2 +- TedeeLock.xcframework/Info.plist | 20 ++--- .../_CodeSignature/CodeDirectory | Bin 153 -> 153 bytes .../_CodeSignature/CodeRequirements-1 | Bin 201 -> 201 bytes .../_CodeSignature/CodeResources | 78 +++++++++--------- .../_CodeSignature/CodeSignature | Bin 4871 -> 4871 bytes .../Project/arm64-apple-ios.swiftsourceinfo | Bin 63868 -> 63868 bytes .../arm64-apple-ios.abi.json | 4 +- .../ios-arm64/TedeeLock.framework/TedeeLock | Bin 1307984 -> 1282672 bytes .../arm64-apple-ios-simulator.swiftsourceinfo | Bin 63880 -> 63880 bytes ...x86_64-apple-ios-simulator.swiftsourceinfo | Bin 63880 -> 63880 bytes .../arm64-apple-ios-simulator.abi.json | 4 +- .../x86_64-apple-ios-simulator.abi.json | 4 +- .../TedeeLock.framework/TedeeLock | Bin 2623584 -> 2598208 bytes .../Project/arm64-apple-macos.swiftsourceinfo | Bin 63872 -> 63872 bytes .../x86_64-apple-macos.swiftsourceinfo | Bin 63872 -> 63872 bytes .../arm64-apple-macos.abi.json | 4 +- .../x86_64-apple-macos.abi.json | 4 +- .../TedeeLock.framework/Versions/A/TedeeLock | Bin 2600696 -> 2575624 bytes docs/data/documentation/tedeelock.json | 2 +- .../tedeelock/how-to-connect-to-the-lock.json | 2 +- .../documentation/tedeelock/tedeeaddlock.json | 2 +- .../tedeeaddlock/activationcode.json | 2 +- .../tedeeaddlock/devicesettings.json | 2 +- .../tedeelock/tedeeaddlock/name.json | 2 +- .../tedeeaddlock/organizationid.json | 2 +- .../tedeelock/tedeeaddlock/revision.json | 2 +- .../tedeelock/tedeeaddlock/serialnumber.json | 2 +- .../tedeelock/tedeeaddlock/signature.json | 2 +- .../tedeeaddlock/softwareversions.json | 2 +- .../tedeelock/tedeeaddlock/timezone.json | 2 +- .../tedeelock/tedeecertificate.json | 2 +- .../tedeecertificate/certificate.json | 2 +- .../tedeecertificate/devicepublickey.json | 2 +- .../tedeelock/tedeecertificate/errors.json | 2 +- .../tedeecertificate/errors/!=(_:_:).json | 2 +- .../errors/equatable-implementations.json | 2 +- .../errors/error-implementations.json | 2 +- .../tedeecertificate/errors/expired.json | 2 +- .../errors/invaliddevicepublickey.json | 2 +- .../errors/invalidmobilepublickey.json | 2 +- .../errors/localizeddescription.json | 2 +- .../tedeecertificate/expirationdate.json | 2 +- ...ate:devicepublickey:mobilepublickey:).json | 2 +- .../tedeecertificate/mobilepublickey.json | 2 +- .../tedeelock/tedeeconnectionstatus.json | 2 +- .../tedeeconnectionstatus/error.json | 2 +- .../tedeeconnectionstatus/serialnumber.json | 2 +- .../status-swift.enum.json | 2 +- .../status-swift.enum/!=(_:_:).json | 2 +- .../status-swift.enum/connected.json | 2 +- .../status-swift.enum/connecting.json | 2 +- .../status-swift.enum/disconnected.json | 2 +- .../equatable-implementations.json | 2 +- .../status-swift.property.json | 2 +- .../tedeelock/tedeedevicesettings.json | 2 +- .../tedeedevicesettings/autolockdelay.json | 2 +- .../tedeedevicesettings/autolockenabled.json | 2 +- .../autolockimplicitdelay.json | 2 +- .../autolockimplicitenabled.json | 2 +- .../autopullspringenabled.json | 2 +- .../buttonlockenabled.json | 2 +- .../buttonunlockenabled.json | 2 +- .../postponedlockdelay.json | 2 +- .../postponedlockenabled.json | 2 +- .../pullspringduration.json | 2 +- .../pullspringenabled.json | 2 +- .../tedeelock/tedeelockmanager.json | 2 +- .../actor-implementations.json | 2 +- .../assertisolated(_:file:line:).json | 2 +- .../assumeisolated(_:file:line:).json | 2 +- .../closelock(_:parameter:).json | 2 +- ...onnect(_:certificate:keepconnection:).json | 2 +- .../connectionstatusstream.json | 2 +- .../tedeelockmanager/disconnect(_:).json | 2 +- .../tedeelock/tedeelockmanager/errors.json | 2 +- .../errors/alreadyconnected.json | 2 +- .../errors/alreadyconnecting.json | 2 +- .../errors/alreadyregistered.json | 2 +- .../errors/cantparseresponse.json | 2 +- .../errors/cantsendcommand.json | 2 +- .../errors/devicenotinitialized.json | 2 +- .../tedeelockmanager/errors/disconnected.json | 2 +- .../errors/error-implementations.json | 2 +- .../errors/invalidcertificate.json | 2 +- .../errors/invalidparameters.json | 2 +- .../errors/invalidresponse.json | 2 +- .../errors/localizeddescription.json | 2 +- .../errors/missingsigneddatetime.json | 2 +- .../tedeelockmanager/errors/nopermission.json | 2 +- .../tedeelockmanager/errors/notconnected.json | 2 +- .../tedeelockmanager/errors/notfound.json | 2 +- .../errors/securesessionfailed.json | 2 +- .../errors/signeddatetimeprovider(_:).json | 2 +- .../errors/systempermissions.json | 2 +- .../errors/waitingforresponse.json | 2 +- .../tedeelockmanager/getaddlockdata(_:).json | 2 +- .../getlocksettings(from:).json | 2 +- .../tedeelockmanager/getlockstate(_:).json | 2 +- .../tedeelockmanager/getversion(from:).json | 2 +- .../tedeelockmanager/isconnected(_:).json | 2 +- .../tedeelockmanager/notificationsstream.json | 2 +- .../openlock(_:parameter:).json | 2 +- .../preconditionisolated(_:file:line:).json | 2 +- .../tedeelock/tedeelockmanager/publickey.json | 2 +- .../tedeelockmanager/pulllock(_:).json | 2 +- .../registerlock(_:registration:).json | 2 +- .../sendcommand(_:command:parameters:).json | 2 +- .../setsigneddatetimeprovider(_:).json | 2 +- .../tedeelock/tedeelockmanager/shared.json | 2 +- .../tedeelockmanager/unsecureconnect(_:).json | 2 +- .../tedeelockoperationparameters.json | 2 +- .../!=(_:_:).json | 2 +- .../tedeelockoperationparameters/auto.json | 2 +- .../autoalwayspull.json | 2 +- .../autoneverpull.json | 2 +- .../autowhenlockedthenpull.json | 2 +- .../autowhenunlockedthenpull.json | 2 +- .../equatable-implementations.json | 2 +- .../tedeelockoperationparameters/force.json | 2 +- .../hash(into:).json | 2 +- .../hashvalue.json | 2 +- .../init(rawvalue:).json | 2 +- .../tedeelockoperationparameters/none.json | 2 +- .../rawrepresentable-implementations.json | 2 +- .../unlockorpull.json | 2 +- .../withoutpull.json | 2 +- .../tedeelock/tedeelockoperationresult.json | 2 +- .../tedeelockoperationresult/!=(_:_:).json | 2 +- .../tedeelockoperationresult/busy.json | 2 +- .../tedeelockoperationresult/dismounted.json | 2 +- .../equatable-implementations.json | 2 +- .../tedeelockoperationresult/error.json | 2 +- .../tedeelockoperationresult/hash(into:).json | 2 +- .../tedeelockoperationresult/hashvalue.json | 2 +- .../init(rawvalue:).json | 2 +- .../invalidparameter.json | 2 +- .../nopermission.json | 2 +- .../notcalibrated.json | 2 +- .../notconfigured.json | 2 +- .../rawrepresentable-implementations.json | 2 +- .../tedeelockoperationresult/success.json | 2 +- .../unlockalreadycalledbyautounlock.json | 2 +- .../unlockalreadycalledbyotheroperation.json | 2 +- .../tedeelock/tedeelockstate.json | 2 +- .../tedeelockstate/state-swift.enum.json | 2 +- .../state-swift.enum/!=(_:_:).json | 2 +- .../state-swift.enum/calibration.json | 2 +- .../equatable-implementations.json | 2 +- .../state-swift.enum/locked.json | 2 +- .../state-swift.enum/locking.json | 2 +- .../state-swift.enum/partiallyunlocked.json | 2 +- .../state-swift.enum/pulling.json | 2 +- .../state-swift.enum/pullspring.json | 2 +- .../state-swift.enum/uncalibrated.json | 2 +- .../state-swift.enum/unknown.json | 2 +- .../state-swift.enum/unlocked.json | 2 +- .../state-swift.enum/unlocking.json | 2 +- .../tedeelockstate/state-swift.property.json | 2 +- .../tedeelock/tedeelockstate/statestatus.json | 2 +- .../tedeelock/tedeelockstate/status.json | 2 +- .../tedeelockstate/status/!=(_:_:).json | 2 +- .../status/equatable-implementations.json | 2 +- .../tedeelockstate/status/jammed.json | 2 +- .../tedeelock/tedeelockstate/status/ok.json | 2 +- .../tedeelock/tedeenotification.json | 2 +- .../notification-swift.enum.json | 2 +- .../notification-swift.enum/generic(_:).json | 2 +- .../lockstate(_:).json | 2 +- .../notification-swift.property.json | 2 +- .../tedeenotification/serialnumber.json | 2 +- .../tedeelock/tedeeregisterlock.json | 2 +- .../tedeeregisterlock/authpublickey.json | 2 +- .../tedeelock/tedeeregisterlock/id.json | 2 +- ...rgetdevicerevision:id:authpublickey:).json | 2 +- .../tedeelock/tedeeregisterlock/revision.json | 2 +- .../targetdevicerevision.json | 2 +- .../tedeelock/tedeeserialnumber.json | 2 +- .../tedeelock/tedeeserialnumber/errors.json | 2 +- .../tedeeserialnumber/errors/!=(_:_:).json | 2 +- .../errors/equatable-implementations.json | 2 +- .../errors/error-implementations.json | 2 +- .../errors/invaliddevicetype.json | 2 +- .../errors/invalidformat.json | 2 +- .../errors/localizeddescription.json | 2 +- .../init(serialnumber:).json | 2 +- .../tedeeserialnumber/serialnumber.json | 2 +- .../tedeelock/tedeesigneddatetime.json | 2 +- .../tedeesigneddatetime/datetime.json | 2 +- .../init(datetime:signature:).json | 2 +- .../tedeesigneddatetime/signature.json | 2 +- .../tedeesigneddatetimeprovider.json | 2 +- .../datetime(for:).json | 2 +- .../tedeelock/tedeesoftwareversion.json | 2 +- .../tedeesoftwareversion/softwaretype.json | 2 +- .../tedeesoftwareversion/version.json | 2 +- docs/data/tutorials/how-to-add-lock.json | 2 +- docs/data/tutorials/tedeelock/add-lock.json | 2 +- .../tutorials/tedeelock/get-lock-data.json | 2 +- docs/data/tutorials/tedeelock/pak-set-up.json | 2 +- .../tutorials/tedeelock/register-lock.json | 2 +- .../tutorials/tedeelock/requirements.json | 2 +- .../tedeelock/secured-connection.json | 2 +- docs/data/tutorials/tedeelock/summary.json | 2 +- .../tedeelock/unsecured-connection.json | 2 +- docs/index/availability.index | Bin 1110 -> 1110 bytes docs/index/data.mdb | Bin 229376 -> 229376 bytes docs/metadata.json | 2 +- 396 files changed, 433 insertions(+), 433 deletions(-) diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock.json b/TedeeLock.doccarchive/data/documentation/tedeelock.json index 5fcd296..cf09fc1 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock.json @@ -1 +1 @@ -{"hierarchy":{"paths":[[]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock"]}],"metadata":{"externalID":"TedeeLock","role":"collection","roleHeading":"Framework","title":"TedeeLock","symbolKind":"module","modules":[{"name":"TedeeLock"}]},"abstract":[{"type":"text","text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol."}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock"},"primaryContentSections":[{"content":[{"text":"Overview","anchor":"Overview","type":"heading","level":2},{"type":"heading","anchor":"Features","text":"Features","level":3},{"type":"unorderedList","items":[{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"Effortless Integration"}]},{"text":": Incorporate Tedee lock functionality into your iOS applications seamlessly.","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"Full Control"}]},{"text":": Communicate with and operate Tedee locks, including ","type":"text"},{"isActive":true,"identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/","type":"reference"},{"text":" and ","type":"text"},{"identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","type":"reference","isActive":true},{"type":"text","text":", with comprehensive control options."}]}]},{"content":[{"inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"Efficient Communication"}]},{"type":"text","text":": Utilize Bluetooth Low Energy (BLE) for efficient device interaction, ensuring optimal performance and minimal energy consumption."}],"type":"paragraph"}]}]},{"level":3,"text":"Credits","type":"heading","anchor":"Credits"},{"inlineContent":[{"type":"text","text":"This product includes software developed by the “Marcin Krzyzanowski” ("},{"type":"reference","identifier":"http:\/\/krzyzanowskim.com\/","isActive":true},{"text":").","type":"text"}],"type":"paragraph"}],"kind":"content"}],"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"],"title":"Tutorials"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock"],"title":"Articles"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"],"title":"Classes"},{"title":"Protocols","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]},{"title":"Structures","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"http://krzyzanowskim.com/":{"type":"link","title":"http:\/\/krzyzanowskim.com\/","url":"http:\/\/krzyzanowskim.com\/","titleInlineContent":[{"type":"text","text":"http:\/\/krzyzanowskim.com\/"}],"identifier":"http:\/\/krzyzanowskim.com\/"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"https://tedee.com/product-info/tedee-go-best-keyless-access/":{"url":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","titleInlineContent":[{"type":"text","text":"Tedee GO"}],"title":"Tedee GO","type":"link","identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"https://tedee.com/product-info/tedee-pro/":{"type":"link","title":"Tedee PRO","url":"https:\/\/tedee.com\/product-info\/tedee-pro\/","titleInlineContent":[{"type":"text","text":"Tedee PRO"}],"identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"content","content":[{"anchor":"Overview","text":"Overview","level":2,"type":"heading"},{"anchor":"Features","level":3,"type":"heading","text":"Features"},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"inlineContent":[{"type":"text","text":"Effortless Integration"}],"type":"strong"},{"text":": Incorporate Tedee lock functionality into your iOS applications seamlessly.","type":"text"}]}]},{"content":[{"inlineContent":[{"type":"strong","inlineContent":[{"text":"Full Control","type":"text"}]},{"text":": Communicate with and operate Tedee locks, including ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/"},{"text":" and ","type":"text"},{"type":"reference","identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","isActive":true},{"type":"text","text":", with comprehensive control options."}],"type":"paragraph"}]},{"content":[{"inlineContent":[{"type":"strong","inlineContent":[{"text":"Efficient Communication","type":"text"}]},{"text":": Utilize Bluetooth Low Energy (BLE) for efficient device interaction, ensuring optimal performance and minimal energy consumption.","type":"text"}],"type":"paragraph"}]}],"type":"unorderedList"},{"type":"heading","level":3,"anchor":"Credits","text":"Credits"},{"type":"paragraph","inlineContent":[{"type":"text","text":"This product includes software developed by the “Marcin Krzyzanowski” ("},{"identifier":"http:\/\/krzyzanowskim.com\/","isActive":true,"type":"reference"},{"type":"text","text":")."}]}]}],"hierarchy":{"paths":[[]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"],"title":"Tutorials"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock"],"title":"Articles"},{"title":"Classes","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]},{"title":"Protocols","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]},{"title":"Structures","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"],"title":"Enumerations"}],"sections":[],"metadata":{"title":"TedeeLock","externalID":"TedeeLock","modules":[{"name":"TedeeLock"}],"symbolKind":"module","roleHeading":"Framework","role":"collection"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock"},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"https://tedee.com/product-info/tedee-go-best-keyless-access/":{"url":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","type":"link","identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","title":"Tedee GO","titleInlineContent":[{"text":"Tedee GO","type":"text"}]},"https://tedee.com/product-info/tedee-pro/":{"url":"https:\/\/tedee.com\/product-info\/tedee-pro\/","type":"link","identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/","titleInlineContent":[{"type":"text","text":"Tedee PRO"}],"title":"Tedee PRO"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"http://krzyzanowskim.com/":{"url":"http:\/\/krzyzanowskim.com\/","type":"link","identifier":"http:\/\/krzyzanowskim.com\/","title":"http:\/\/krzyzanowskim.com\/","titleInlineContent":[{"text":"http:\/\/krzyzanowskim.com\/","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/how-to-connect-to-the-lock.json b/TedeeLock.doccarchive/data/documentation/tedeelock/how-to-connect-to-the-lock.json index 1e37103..323f55a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/how-to-connect-to-the-lock.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/how-to-connect-to-the-lock.json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/how-to-connect-to-the-lock"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"],["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"content","content":[{"type":"heading","text":"Overview","anchor":"Overview","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":"Before you are able to connect with Lock, you need to be able to comunicate with Tedee API and setup required data presented below."}]},{"anchor":"Mobile-Registration","level":3,"text":"Mobile Registration","type":"heading"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Each instance of the application for each user must be registered in Tedee API. To do that, this sdk generates "},{"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","isActive":true},{"type":"text","text":" which shouldn’t change until user will delete and reinstall the application."}]},{"type":"orderedList","items":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Obtain publicKey."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Register mobile by calling ","type":"text"},{"type":"reference","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","isActive":true},{"text":" endpoint.","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Save received id, it will be needed in next section."}]}]}]},{"level":3,"type":"heading","anchor":"Certificate","text":"Certificate"},{"type":"paragraph","inlineContent":[{"text":"Certificate is required to establish secure bluetooth connection with the Lock. Certificate is issued for specific lock and mobile. To request certificate you need to have id (mobile id) that you received in previous section and device id of the lock that can from ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks"},{"type":"text","text":"."}]},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Request certificate from ","type":"text"},{"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","type":"reference","isActive":true},{"text":".","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Save the response until the certificate expire.","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Create "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","isActive":true,"type":"reference"},{"type":"text","text":" object from received certificate."}]}]}],"type":"orderedList"},{"anchor":"Connection","text":"Connection","level":3,"type":"heading"},{"items":[{"content":[{"inlineContent":[{"type":"text","text":"Invoke"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","type":"reference","isActive":true},{"type":"text","text":" method with "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":" and ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","isActive":true,"type":"reference"},{"type":"text","text":"."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","type":"reference","isActive":true},{"type":"text","text":" will try to find and establish secure connection with the lock for up to 30 sec."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"If connection was unsuccessful or lock was outside of the BLE range, "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","isActive":true,"type":"reference"},{"type":"text","text":" will return appropriate error."}]}]}],"type":"orderedList"},{"type":"heading","level":3,"anchor":"Example-app","text":"Example app"},{"inlineContent":[{"type":"text","text":"Complete example app can be found "},{"type":"reference","isActive":true,"identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios"}],"type":"paragraph"}]}],"metadata":{"role":"article","title":"How to connect to the Lock?","modules":[{"name":"TedeeLock"}],"roleHeading":"Article"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"https://github.com/tedee-com/tedee-example-ble-ios":{"url":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","title":"here","identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","titleInlineContent":[{"type":"text","text":"here"}],"type":"link"},"https://api.tedee.com/swagger/index.html#/Mobile/PostMobile":{"url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","title":"\/my\/mobile","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","titleInlineContent":[{"text":"\/my\/mobile","type":"text"}],"type":"link"},"https://api.tedee.com/swagger/index.html#/DeviceCertificate/GetCertificateForMobile":{"titleInlineContent":[{"type":"text","text":"\/my\/devicecertificate\/getformobile"}],"url":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","title":"\/my\/devicecertificate\/getformobile","type":"link","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"https://api.tedee.com/swagger/index.html#/Lock/GetAllLocks":{"type":"link","titleInlineContent":[{"text":"\/my\/lock","type":"text"}],"title":"\/my\/lock","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock"},"metadata":{"modules":[{"name":"TedeeLock"}],"title":"How to connect to the Lock?","role":"article","roleHeading":"Article"},"variants":[{"paths":["\/documentation\/tedeelock\/how-to-connect-to-the-lock"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"primaryContentSections":[{"kind":"content","content":[{"type":"heading","text":"Overview","level":2,"anchor":"Overview"},{"inlineContent":[{"text":"Before you are able to connect with Lock, you need to be able to comunicate with Tedee API and setup required data presented below.","type":"text"}],"type":"paragraph"},{"type":"heading","text":"Mobile Registration","level":3,"anchor":"Mobile-Registration"},{"inlineContent":[{"type":"text","text":"Each instance of the application for each user must be registered in Tedee API. To do that, this sdk generates "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","isActive":true,"type":"reference"},{"type":"text","text":" which shouldn’t change until user will delete and reinstall the application."}],"type":"paragraph"},{"type":"orderedList","items":[{"content":[{"inlineContent":[{"type":"text","text":"Obtain publicKey."}],"type":"paragraph"}]},{"content":[{"inlineContent":[{"text":"Register mobile by calling ","type":"text"},{"type":"reference","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","isActive":true},{"type":"text","text":" endpoint."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Save received id, it will be needed in next section.","type":"text"}]}]}]},{"type":"heading","anchor":"Certificate","text":"Certificate","level":3},{"type":"paragraph","inlineContent":[{"text":"Certificate is required to establish secure bluetooth connection with the Lock. Certificate is issued for specific lock and mobile. To request certificate you need to have id (mobile id) that you received in previous section and device id of the lock that can from ","type":"text"},{"isActive":true,"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks","type":"reference"},{"type":"text","text":"."}]},{"type":"orderedList","items":[{"content":[{"inlineContent":[{"text":"Request certificate from ","type":"text"},{"isActive":true,"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","type":"reference"},{"type":"text","text":"."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Save the response until the certificate expire."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Create ","type":"text"},{"isActive":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"reference"},{"type":"text","text":" object from received certificate."}]}]}]},{"level":3,"type":"heading","text":"Connection","anchor":"Connection"},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Invoke","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","isActive":true,"type":"reference"},{"type":"text","text":" method with "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"type":"text","text":" and "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"},{"text":".","type":"text"}]}]},{"content":[{"inlineContent":[{"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","isActive":true},{"text":" will try to find and establish secure connection with the lock for up to 30 sec.","type":"text"}],"type":"paragraph"}]},{"content":[{"inlineContent":[{"text":"If connection was unsuccessful or lock was outside of the BLE range, ","type":"text"},{"isActive":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","type":"reference"},{"type":"text","text":" will return appropriate error."}],"type":"paragraph"}]}],"type":"orderedList"},{"text":"Example app","type":"heading","level":3,"anchor":"Example-app"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Complete example app can be found "},{"identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","isActive":true,"type":"reference"}]}]}],"kind":"article","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"],["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"https://api.tedee.com/swagger/index.html#/DeviceCertificate/GetCertificateForMobile":{"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","title":"\/my\/devicecertificate\/getformobile","titleInlineContent":[{"text":"\/my\/devicecertificate\/getformobile","type":"text"}],"type":"link"},"https://api.tedee.com/swagger/index.html#/Lock/GetAllLocks":{"titleInlineContent":[{"type":"text","text":"\/my\/lock"}],"title":"\/my\/lock","type":"link","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"https://api.tedee.com/swagger/index.html#/Mobile/PostMobile":{"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","title":"\/my\/mobile","titleInlineContent":[{"text":"\/my\/mobile","type":"text"}],"type":"link"},"https://github.com/tedee-com/tedee-example-ble-ios":{"titleInlineContent":[{"type":"text","text":"here"}],"title":"here","type":"link","url":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock.json index a0a2660..1207ce3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"},"metadata":{"role":"symbol","symbolKind":"struct","navigatorTitle":[{"text":"TedeeAddLock","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeAddLock","roleHeading":"Structure","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeAddLock","kind":"identifier"}],"externalID":"s:9TedeeLock0a3AddB0V"},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone"]}],"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"relationshipsSections":[{"type":"conformsTo","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/SE"],"kind":"relationships"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"role":"symbol","abstract":[],"title":"activationCode","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"activationCode","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","title":"timeZone","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","title":"softwareVersions","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"softwareVersions","kind":"identifier"},{"kind":"text","text":": ["},{"text":"TedeeSoftwareVersion","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":"?","kind":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","title":"organizationId","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","title":"signature"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","kind":"symbol","type":"topic","title":"deviceSettings","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","role":"symbol"},"doc://TedeeLock/SE":{"title":"Swift.Encodable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","title":"name","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/name","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"title":"serialNumber","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","kind":"symbol","type":"topic","title":"revision","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","role":"symbol"}}} \ No newline at end of file +{"metadata":{"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeAddLock"}],"symbolKind":"struct","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Structure","title":"TedeeAddLock","externalID":"s:9TedeeLock0a3AddB0V","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}]},"schemaVersion":{"minor":3,"patch":0,"major":0},"relationshipsSections":[{"type":"conformsTo","kind":"relationships","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/SE"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone"]}],"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","type":"topic","role":"symbol","title":"revision"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/SE":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"timeZone"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","type":"topic","role":"symbol","title":"timeZone"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","title":"activationCode"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","title":"softwareVersions"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"organizationId"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":"?","kind":"text"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","title":"organizationId"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/name","title":"name"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","title":"signature"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceSettings"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","title":"deviceSettings","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/activationcode.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/activationcode.json index 2b8aaa9..9c0b20b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/activationcode.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/activationcode.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"platforms":["macOS"],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/activationcode"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"metadata":{"externalID":"s:9TedeeLock0a3AddB0V14activationCodeSSvp","title":"activationCode","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"activationCode","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol"},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"role":"symbol","abstract":[],"title":"activationCode","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"activationCode","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/activationcode"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"activationCode","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode"},"metadata":{"title":"activationCode","roleHeading":"Instance Property","externalID":"s:9TedeeLock0a3AddB0V14activationCodeSSvp","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"symbolKind":"property","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","title":"activationCode"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/devicesettings.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/devicesettings.json index e936406..89f369a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/devicesettings.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/devicesettings.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"kind":"text","text":": "},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/devicesettings"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"kind":"symbol","metadata":{"modules":[{"name":"TedeeLock"}],"title":"deviceSettings","symbolKind":"property","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"kind":"text","text":": "},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"externalID":"s:9TedeeLock0a3AddB0V14deviceSettingsAA0a6DeviceE0Vvp","roleHeading":"Instance Property"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","kind":"symbol","type":"topic","title":"deviceSettings","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"externalID":"s:9TedeeLock0a3AddB0V14deviceSettingsAA0a6DeviceE0Vvp","title":"deviceSettings","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","text":"TedeeDeviceSettings"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/devicesettings"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceSettings"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","title":"deviceSettings","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","role":"symbol","kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/name.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/name.json index b9fa134..f9b8b8b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/name.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/name.json @@ -1 +1 @@ -{"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"name","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"metadata":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"title":"name","symbolKind":"property","externalID":"s:9TedeeLock0a3AddB0V4nameSSvp","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/name"]}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","title":"name","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/name","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"title":"name","role":"symbol","externalID":"s:9TedeeLock0a3AddB0V4nameSSvp","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"symbolKind":"property","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/name"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/name","title":"name"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/organizationid.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/organizationid.json index 5e16ace..d4cdd67 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/organizationid.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/organizationid.json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/organizationid"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","interfaceLanguage":"swift"},"metadata":{"symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","title":"organizationId","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"externalID":"s:9TedeeLock0a3AddB0V14organizationIdSiSgvp","role":"symbol"},"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"organizationId","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":"?"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":"?","kind":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","title":"organizationId","kind":"symbol","role":"symbol","abstract":[]}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0a3AddB0V14organizationIdSiSgvp","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"organizationId","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":"?"}],"symbolKind":"property","roleHeading":"Instance Property","title":"organizationId","modules":[{"name":"TedeeLock"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"kind":"text","text":"?"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/organizationid"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"organizationId"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":"?","kind":"text"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","title":"organizationId"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/revision.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/revision.json index 047041c..65184fc 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/revision.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/revision.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/revision"]}],"metadata":{"roleHeading":"Instance Property","symbolKind":"property","title":"revision","externalID":"s:9TedeeLock0a3AddB0V8revisionSivp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}]},"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","kind":"symbol","type":"topic","title":"revision","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","symbolKind":"property","externalID":"s:9TedeeLock0a3AddB0V8revisionSivp","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"title":"revision"},"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/revision"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","type":"topic","role":"symbol","title":"revision"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/serialnumber.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/serialnumber.json index 785a8b9..a710108 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/serialnumber.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/serialnumber.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/serialnumber"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"kind":"symbol","sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:9TedeeLock0a3AddB0V12serialNumberSSvp","roleHeading":"Instance Property","symbolKind":"property","title":"serialNumber"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"title":"serialNumber","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0a3AddB0V12serialNumberSSvp","title":"serialNumber","roleHeading":"Instance Property","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","interfaceLanguage":"swift"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/signature.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/signature.json index da3b786..8b62900 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/signature.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/signature.json @@ -1 +1 @@ -{"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"metadata":{"externalID":"s:9TedeeLock0a3AddB0V9signatureSSvp","symbolKind":"property","title":"signature","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/signature"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","title":"signature"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/signature"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"title":"signature","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"externalID":"s:9TedeeLock0a3AddB0V9signatureSSvp","roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","title":"signature"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/softwareversions.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/softwareversions.json index 5a8be1f..76dec18 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/softwareversions.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/softwareversions.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"softwareVersions","kind":"identifier"},{"kind":"text","text":": ["},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}]}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/softwareversions"]}],"sections":[],"metadata":{"symbolKind":"property","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"title":"softwareVersions","externalID":"s:9TedeeLock0a3AddB0V16softwareVersionsSayAA0A15SoftwareVersionVGvp","roleHeading":"Instance Property"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","title":"softwareVersions","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"softwareVersions","kind":"identifier"},{"kind":"text","text":": ["},{"text":"TedeeSoftwareVersion","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/softwareversions"]}],"sections":[],"metadata":{"symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0a3AddB0V16softwareVersionsSayAA0A15SoftwareVersionVGvp","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"title":"softwareVersions"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","title":"softwareVersions"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/timezone.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/timezone.json index 0130b86..9db8bc3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/timezone.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeaddlock/timezone.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","interfaceLanguage":"swift"},"kind":"symbol","sections":[],"metadata":{"symbolKind":"property","role":"symbol","externalID":"s:9TedeeLock0a3AddB0V8timeZoneSSvp","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"timeZone","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/timezone"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","title":"timeZone","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","interfaceLanguage":"swift"},"metadata":{"externalID":"s:9TedeeLock0a3AddB0V8timeZoneSSvp","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"roleHeading":"Instance Property","symbolKind":"property","modules":[{"name":"TedeeLock"}],"title":"timeZone","role":"symbol"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/timezone"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"timeZone"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","type":"topic","role":"symbol","title":"timeZone"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate.json index 6b95b57..9334093 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate.json @@ -1 +1 @@ -{"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate"]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"TedeeCertificate","externalID":"s:9TedeeLock0A11CertificateV","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeCertificate"}],"roleHeading":"Structure","symbolKind":"struct","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"role":"symbol","modules":[{"name":"TedeeLock"}]},"relationshipsSections":[{"kind":"relationships","title":"Conforms To","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/s8SendableP"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","title":"certificate","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"}],"role":"symbol","type":"topic","kind":"symbol","abstract":[],"title":"expirationDate","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"},"doc://TedeeLock/s8SendableP":{"identifier":"doc:\/\/TedeeLock\/s8SendableP","type":"unresolvable","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"title":"mobilePublicKey","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","title":"devicePublicKey","abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"certificate"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"mobilePublicKey"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","interfaceLanguage":"swift"},"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"],"title":"Instance Properties"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"],"title":"Enumerations"}],"relationshipsSections":[{"kind":"relationships","type":"conformsTo","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/s8SendableP"]}],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate"]}],"sections":[],"metadata":{"navigatorTitle":[{"kind":"identifier","text":"TedeeCertificate"}],"title":"TedeeCertificate","symbolKind":"struct","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A11CertificateV","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"roleHeading":"Structure","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"kind":"symbol","abstract":[],"title":"devicePublicKey","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"devicePublicKey"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"role":"symbol","abstract":[],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","kind":"symbol","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":", "},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"mobilePublicKey"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"kind":"symbol","abstract":[],"title":"expirationDate","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"expirationDate"},{"kind":"text","text":": "},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[],"title":"mobilePublicKey","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","kind":"symbol","title":"certificate","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/certificate.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/certificate.json index 8d151f1..a1f2c3f 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/certificate.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/certificate.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/certificate"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A11CertificateV11certificateSSvp","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","title":"certificate"},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","title":"certificate","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"certificate"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:9TedeeLock0A11CertificateV11certificateSSvp","title":"certificate","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property"},"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"certificate"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/certificate"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","kind":"symbol","title":"certificate","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/devicepublickey.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/devicepublickey.json index a54c135..29cf028 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/devicepublickey.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/devicepublickey.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A11CertificateV15devicePublicKeySSvp","symbolKind":"property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"title":"devicePublicKey","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"devicePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","title":"devicePublicKey","abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"devicePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"languages":["swift"]}]}],"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","title":"devicePublicKey","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"symbolKind":"property","externalID":"s:9TedeeLock0A11CertificateV15devicePublicKeySSvp"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"kind":"symbol","abstract":[],"title":"devicePublicKey","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"devicePublicKey"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors.json index 89f0329..77e1b99 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors.json @@ -1 +1 @@ -{"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"],"generated":true,"title":"Default Implementations"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"text":"Errors","kind":"identifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeCertificate.Errors","symbolKind":"enum","extendedModule":"TedeeLock","roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"externalID":"s:9TedeeLock0A11CertificateV6ErrorsO"},"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors"]}],"kind":"symbol","sections":[],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","title":"Conforms To"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","kind":"article","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","title":"TedeeCertificate.Errors.invalidMobilePublicKey","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/s5ErrorP":{"title":"Swift.Error","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDevicePublicKey","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey","title":"TedeeCertificate.Errors.invalidDevicePublicKey","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","title":"Error Implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/SH":{"title":"Swift.Hashable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"role":"symbol","title":"TedeeCertificate.Errors.expired","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"extendedModule":"TedeeLock","roleHeading":"Enumeration","symbolKind":"enum","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"title":"TedeeCertificate.Errors","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO"},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"]},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"],"title":"Default Implementations"}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Errors","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","abstract":[],"title":"TedeeCertificate.Errors.invalidDevicePublicKey","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidDevicePublicKey"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"},"doc://TedeeLock/SH":{"type":"unresolvable","title":"Swift.Hashable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/s5ErrorP":{"type":"unresolvable","title":"Swift.Error","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations","title":"Equatable Implementations","abstract":[],"type":"topic","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","abstract":[],"title":"TedeeCertificate.Errors.invalidMobilePublicKey","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidMobilePublicKey","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/SQ":{"type":"unresolvable","title":"Swift.Equatable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"abstract":[],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","title":"TedeeCertificate.Errors.expired","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","title":"Error Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json index 828a167..f8de0b5 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json @@ -1 +1 @@ -{"kind":"symbol","abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"metadata":{"symbolKind":"op","role":"symbol","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO","extendedModule":"Swift","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"roleHeading":"Operator","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","kind":"article","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"internalParam","text":"lhs"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"title":"!=(_:_:)","roleHeading":"Operator","symbolKind":"op","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"extendedModule":"Swift","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","title":"!=(_:_:)","abstract":[],"type":"topic","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations","title":"Equatable Implementations","abstract":[],"type":"topic","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json index 3bf4b9c..d34cbd4 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json @@ -1 +1 @@ -{"kind":"article","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)"],"title":"Operators","generated":true}],"metadata":{"role":"collectionGroup","title":"Equatable Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"!=(_:_:)"}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","interfaceLanguage":"swift"},"kind":"article","topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)"],"generated":true}],"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Equatable Implementations"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","title":"!=(_:_:)","abstract":[],"type":"topic","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json index 758c7d3..4347df7 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription"],"generated":true,"title":"Instance Properties"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"sections":[],"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"title":"Error Implementations","role":"collectionGroup"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations"]}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","type":"topic","kind":"symbol","title":"localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"sections":[],"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Error Implementations"},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription"],"generated":true,"title":"Instance Properties"}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","type":"topic","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"localizedDescription","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/expired.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/expired.json index c50cb0c..3cf0eb3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/expired.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/expired.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/expired"]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO7expiredyA2EmF","roleHeading":"Case","title":"TedeeCertificate.Errors.expired","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"expired"}]},"kind":"symbol","sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"expired","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"role":"symbol","title":"TedeeCertificate.Errors.expired","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO7expiredyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}],"title":"TedeeCertificate.Errors.expired","role":"symbol","symbolKind":"case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/expired"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"abstract":[],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","title":"TedeeCertificate.Errors.expired","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json index 855920b..6d559c8 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json @@ -1 +1 @@ -{"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidDevicePublicKeyyA2EmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeCertificate.Errors.invalidDevicePublicKey","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidDevicePublicKey","kind":"identifier"}],"roleHeading":"Case"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDevicePublicKey","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDevicePublicKey","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey","title":"TedeeCertificate.Errors.invalidDevicePublicKey","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","interfaceLanguage":"swift"},"sections":[],"metadata":{"role":"symbol","symbolKind":"case","title":"TedeeCertificate.Errors.invalidDevicePublicKey","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidDevicePublicKeyyA2EmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDevicePublicKey"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDevicePublicKey"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","abstract":[],"title":"TedeeCertificate.Errors.invalidDevicePublicKey","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidDevicePublicKey"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json index 8c5b103..8388009 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey"]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidMobilePublicKeyyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidMobilePublicKey","kind":"identifier"}],"role":"symbol","title":"TedeeCertificate.Errors.invalidMobilePublicKey","symbolKind":"case","roleHeading":"Case"},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey","interfaceLanguage":"swift"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","title":"TedeeCertificate.Errors.invalidMobilePublicKey","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidMobilePublicKey"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidMobilePublicKeyyA2EmF","role":"symbol","title":"TedeeCertificate.Errors.invalidMobilePublicKey","symbolKind":"case"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","abstract":[],"title":"TedeeCertificate.Errors.invalidMobilePublicKey","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidMobilePublicKey","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json index bfb96cf..b62c8bd 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property","extendedModule":"Swift","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO","symbolKind":"property","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"platforms":[{"introducedAt":"8.0","name":"iOS","unavailable":false,"deprecated":false,"beta":false},{"deprecated":false,"unavailable":false,"name":"macOS","introducedAt":"10.10","beta":false},{"beta":false,"name":"tvOS","deprecated":false,"introducedAt":"9.0","unavailable":false},{"introducedAt":"2.0","beta":false,"name":"watchOS","deprecated":false,"unavailable":false}],"title":"localizedDescription"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"text":".","type":"text"}],"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","type":"topic","kind":"symbol","title":"localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","title":"Error Implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"sections":[],"metadata":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"roleHeading":"Instance Property","role":"symbol","extendedModule":"Swift","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"title":"localizedDescription","platforms":[{"name":"iOS","beta":false,"introducedAt":"8.0","unavailable":false,"deprecated":false},{"unavailable":false,"deprecated":false,"introducedAt":"10.10","beta":false,"name":"macOS"},{"introducedAt":"9.0","name":"tvOS","deprecated":false,"unavailable":false,"beta":false},{"deprecated":false,"introducedAt":"2.0","unavailable":false,"beta":false,"name":"watchOS"}],"symbolKind":"property","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO"},"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":" { ","kind":"text"},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"]]},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"text":".","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","title":"Error Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","type":"topic","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"localizedDescription","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/expirationdate.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/expirationdate.json index 5aadcef..110a8a9 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/expirationdate.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/expirationdate.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate"},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0A11CertificateV14expirationDate10Foundation0E0Vvp","symbolKind":"property","title":"expirationDate","roleHeading":"Instance Property"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"expirationDate","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"}]}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/expirationdate"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"}],"role":"symbol","type":"topic","kind":"symbol","abstract":[],"title":"expirationDate","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"expirationDate"},{"kind":"text","text":": "},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}],"title":"expirationDate","externalID":"s:9TedeeLock0A11CertificateV14expirationDate10Foundation0E0Vvp","role":"symbol","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate"},"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/expirationdate"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier","text":"Date"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"kind":"symbol","abstract":[],"title":"expirationDate","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"expirationDate"},{"kind":"text","text":": "},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json index e7bfa7a..ffe3f44 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"symbolKind":"init","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":", ","kind":"text"},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"mobilePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}],"roleHeading":"Initializer","title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","externalID":"s:9TedeeLock0A11CertificateV11certificate14expirationDate15devicePublicKey06mobilehI0ACSS_10Foundation0F0VS2StKcfc"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"expirationDate"},{"kind":"text","text":": "},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"devicePublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"mobilePublicKey","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"content","content":[{"level":2,"text":"Discussion","type":"heading","anchor":"discussion"},{"style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeCertificate.Errors.expired, TedeeCertificate.Errors.invalidDevicePublicKey, TedeeCertificate.Errors.invalidMobilePublicKey","type":"text"}]}],"name":"Throws","type":"aside"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"certificate"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"mobilePublicKey"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","symbolKind":"init","externalID":"s:9TedeeLock0A11CertificateV11certificate14expirationDate15devicePublicKey06mobilehI0ACSS_10Foundation0F0VS2StKcfc","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier","text":"Date"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"mobilePublicKey","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}],"roleHeading":"Initializer"},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"expirationDate"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"devicePublicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"text":"mobilePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"}]}],"kind":"declarations"},{"content":[{"text":"Discussion","level":2,"type":"heading","anchor":"discussion"},{"type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeCertificate.Errors.expired, TedeeCertificate.Errors.invalidDevicePublicKey, TedeeCertificate.Errors.invalidMobilePublicKey","type":"text"}]}],"name":"Throws"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"role":"symbol","abstract":[],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","kind":"symbol","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":", "},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"mobilePublicKey"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json index 5b45687..79a182b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey"]}],"sections":[],"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A11CertificateV15mobilePublicKeySSvp","modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"property","title":"mobilePublicKey","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"mobilePublicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"title":"mobilePublicKey","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"metadata":{"modules":[{"name":"TedeeLock"}],"title":"mobilePublicKey","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"symbolKind":"property","roleHeading":"Instance Property","role":"symbol","externalID":"s:9TedeeLock0A11CertificateV15mobilePublicKeySSvp"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[],"title":"mobilePublicKey","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus.json index edf2ab8..7474387 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"abstract":[{"type":"text","text":"Represents connection status of the Tedee Lock"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property"],"title":"Instance Properties"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"],"title":"Enumerations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","interfaceLanguage":"swift"},"sections":[],"metadata":{"title":"TedeeConnectionStatus","externalID":"s:9TedeeLock0A16ConnectionStatusV","modules":[{"name":"TedeeLock"}],"roleHeading":"Structure","symbolKind":"struct","navigatorTitle":[{"kind":"identifier","text":"TedeeConnectionStatus"}],"role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeConnectionStatus"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier","text":"Error"},{"text":"?","kind":"text"}],"title":"error","abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"type":"text","text":" "},{"text":"Should be one ot ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","type":"reference","isActive":true},{"text":" error","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Represents connection status of the Tedee Lock"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV","role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","symbolKind":"struct","roleHeading":"Structure"},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property"]},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"role":"symbol","title":"error","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error","kind":"symbol","abstract":[{"text":"Optional error that caused the disconnection.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"Should be one ot "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"text":" error","type":"text"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","kind":"typeIdentifier","text":"Status"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"title":"serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/error.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/error.json index 91320b3..fc8ef19 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/error.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/error.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"type":"text","text":" "},{"text":"Should be one ot ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"type":"text","text":" error"}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","interfaceLanguage":"swift"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/error"]}],"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A16ConnectionStatusV5errors5Error_pSgvp","symbolKind":"property","title":"error","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier","text":"Error"},{"kind":"text","text":"?"}],"modules":[{"name":"TedeeLock"}],"role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"platforms":["macOS"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier","text":"Error"},{"text":"?","kind":"text"}],"title":"error","abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"type":"text","text":" "},{"text":"Should be one ot ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","type":"reference","isActive":true},{"text":" error","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error"}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/error"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"symbolKind":"property","title":"error","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"error","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Error","preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier"},{"kind":"text","text":"?"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV5errors5Error_pSgvp"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":"?","kind":"text"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"sections":[],"abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"text":" ","type":"text"},{"type":"text","text":"Should be one ot "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"type":"text","text":" error"}],"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"role":"symbol","title":"error","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error","kind":"symbol","abstract":[{"text":"Optional error that caused the disconnection.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"Should be one ot "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"text":" error","type":"text"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json index 4fb7b58..f2fa3fd 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier","text":"TedeeSerialNumber"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber"]}],"abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"kind":"symbol","sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"}],"title":"serialNumber","roleHeading":"Instance Property","symbolKind":"property","externalID":"s:9TedeeLock0A16ConnectionStatusV12serialNumberAA0a6SerialF0Vvp"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","interfaceLanguage":"swift"},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"role":"symbol","title":"serialNumber","externalID":"s:9TedeeLock0A16ConnectionStatusV12serialNumberAA0a6SerialF0Vvp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"title":"serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json index 3059c27..9b89335 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json @@ -1 +1 @@ -{"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O","symbolKind":"enum","roleHeading":"Enumeration","title":"TedeeConnectionStatus.Status","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"navigatorTitle":[{"text":"Status","kind":"identifier"}],"modules":[{"name":"TedeeLock"}]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected"],"title":"Enumeration Cases"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"],"generated":true}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"title":"TedeeConnectionStatus.Status.connecting","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"connecting","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations","kind":"article","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","role":"collectionGroup","title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"title":"TedeeConnectionStatus.Status.disconnected","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","role":"symbol","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","title":"TedeeConnectionStatus.Status.connected","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"connected","kind":"identifier"}]}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O","symbolKind":"enum","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"role":"symbol","roleHeading":"Enumeration","title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"],"generated":true}],"kind":"symbol","sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","interfaceLanguage":"swift"},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"connecting"}],"title":"TedeeConnectionStatus.Status.connecting","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"title":"Equatable Implementations","type":"topic","role":"collectionGroup","kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"title":"TedeeConnectionStatus.Status.disconnected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"kind":"symbol","role":"symbol","title":"TedeeConnectionStatus.Status.connected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connected","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","abstract":[]},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json index bc25729..f86f965 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"internalParam","text":"lhs"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"]]},"metadata":{"role":"symbol","title":"!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"extendedModule":"Swift","symbolKind":"op","roleHeading":"Operator","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A16ConnectionStatusV0D0O"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations","kind":"article","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","role":"collectionGroup","title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"platforms":["macOS"],"languages":["swift"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","roleHeading":"Operator","symbolKind":"op","title":"!=(_:_:)","extendedModule":"Swift","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A16ConnectionStatusV0D0O","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","interfaceLanguage":"swift"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"title":"Equatable Implementations","type":"topic","role":"collectionGroup","kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json index 440d71a..d291525 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connected"}]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O9connectedyA2EmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","role":"symbol","title":"TedeeConnectionStatus.Status.connected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connected"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","title":"TedeeConnectionStatus.Status.connected","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"connected","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]}}} \ No newline at end of file +{"kind":"symbol","metadata":{"title":"TedeeConnectionStatus.Status.connected","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"connected","kind":"identifier"}],"symbolKind":"case","role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O9connectedyA2EmF"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"connected"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"kind":"symbol","role":"symbol","title":"TedeeConnectionStatus.Status.connected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connected","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json index cb996a0..baa3f8d 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"connecting","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"title":"TedeeConnectionStatus.Status.connecting","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O10connectingyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connecting"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"title":"TedeeConnectionStatus.Status.connecting","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"connecting","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connecting"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O10connectingyA2EmF","roleHeading":"Case","title":"TedeeConnectionStatus.Status.connecting","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connecting"}]},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"connecting"}],"title":"TedeeConnectionStatus.Status.connecting","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json index 038d666..4c85483 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"platforms":["macOS"]}],"kind":"declarations"}],"metadata":{"roleHeading":"Case","role":"symbol","symbolKind":"case","title":"TedeeConnectionStatus.Status.disconnected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O12disconnectedyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"title":"TedeeConnectionStatus.Status.disconnected","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","role":"symbol","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]}}} \ No newline at end of file +{"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeConnectionStatus.Status.disconnected","symbolKind":"case","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O12disconnectedyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"roleHeading":"Case"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"title":"TedeeConnectionStatus.Status.disconnected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json index d8d6544..3c2c323 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json @@ -1 +1 @@ -{"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)"],"title":"Operators"}],"kind":"article","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"title":"Equatable Implementations","role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"metadata":{"role":"collectionGroup","title":"Equatable Implementations","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}]},"topicSections":[{"title":"Operators","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"article","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)","type":"topic","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json index fe5b5ef..47e3234 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property"]}],"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","text":"Status"}],"platforms":["macOS"]}]}],"metadata":{"symbolKind":"property","title":"status","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A16ConnectionStatusV6statusAC0D0Ovp"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property"},"kind":"symbol","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","kind":"typeIdentifier"}],"title":"status","modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","externalID":"s:9TedeeLock0A16ConnectionStatusV6statusAC0D0Ovp","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","kind":"typeIdentifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","kind":"typeIdentifier","text":"Status"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings.json index 0f2d542..d175479 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"platforms":["macOS"]}]}],"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled"]}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SE"],"kind":"relationships","type":"conformsTo","title":"Conforms To"}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings"]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"},"metadata":{"symbolKind":"struct","title":"TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14DeviceSettingsV","role":"symbol","roleHeading":"Structure"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","title":"postponedLockDelay","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","title":"buttonLockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","title":"autoLockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/SE":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","title":"autoLockImplicitDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockImplicitDelay","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","kind":"symbol","title":"autoLockDelay","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","title":"pullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","abstract":[],"title":"pullSpringDuration","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoPullSpringEnabled"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","abstract":[],"title":"autoPullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","kind":"symbol","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Structure","externalID":"s:9TedeeLock0A14DeviceSettingsV","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeDeviceSettings","kind":"identifier"}],"title":"TedeeDeviceSettings","role":"symbol","symbolKind":"struct","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","interfaceLanguage":"swift"},"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled"],"title":"Instance Properties"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings"]}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SE"],"type":"conformsTo","title":"Conforms To","kind":"relationships"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","abstract":[],"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonUnlockEnabled"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"abstract":[],"type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","title":"buttonLockEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"abstract":[],"kind":"symbol","title":"autoLockImplicitDelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoLockEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"title":"pullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","type":"topic","title":"postponedLockDelay","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockDelay","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]},"doc://TedeeLock/SE":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoPullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","role":"symbol","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"title":"pullSpringDuration","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","title":"autoLockDelay","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockDelay"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json index 05471c1..492a24f 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay"},"metadata":{"externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB5DelaySivp","title":"autoLockDelay","modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoLockDelay"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","kind":"symbol","title":"autoLockDelay","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay"},"metadata":{"title":"autoLockDelay","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB5DelaySivp","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"role":"symbol","symbolKind":"property"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","title":"autoLockDelay","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockDelay"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json index 77a95f0..c43b03b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","interfaceLanguage":"swift"},"metadata":{"title":"autoLockEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB7EnabledSbvp","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","symbolKind":"property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","title":"autoLockEnabled","kind":"symbol","role":"symbol","abstract":[]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","interfaceLanguage":"swift"},"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockEnabled"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}]}],"metadata":{"title":"autoLockEnabled","role":"symbol","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB7EnabledSbvp","modules":[{"name":"TedeeLock"}],"symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoLockEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json index 402456a..bce1feb 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"]}],"metadata":{"roleHeading":"Instance Property","role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB13ImplicitDelaySivp","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockImplicitDelay","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"title":"autoLockImplicitDelay","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoLockImplicitDelay"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","title":"autoLockImplicitDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockImplicitDelay","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"sections":[],"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"role":"symbol","title":"autoLockImplicitDelay","symbolKind":"property","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB13ImplicitDelaySivp","modules":[{"name":"TedeeLock"}]},"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"abstract":[],"kind":"symbol","title":"autoLockImplicitDelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json index 9630af9..d03dc9c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","interfaceLanguage":"swift"},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB15ImplicitEnabledSbvp","role":"symbol","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"autoLockImplicitEnabled","roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled","role":"symbol","abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"title":"autoLockImplicitEnabled","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockImplicitEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB15ImplicitEnabledSbvp"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json index 27926be..8b72adb 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled"},"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"platforms":["macOS"],"languages":["swift"]}]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV21autoPullSpringEnabledSbvp","symbolKind":"property","roleHeading":"Instance Property","title":"autoPullSpringEnabled","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoPullSpringEnabled"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","abstract":[],"title":"autoPullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"sections":[],"metadata":{"title":"autoPullSpringEnabled","role":"symbol","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV21autoPullSpringEnabledSbvp","modules":[{"name":"TedeeLock"}],"symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled"]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"kind":"text","text":": "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoPullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json index e9e634b..0a7be1b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"role":"symbol","title":"buttonLockEnabled","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV06buttonB7EnabledSbvp"},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonLockEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","title":"buttonLockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","role":"symbol","abstract":[]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"externalID":"s:9TedeeLock0A14DeviceSettingsV06buttonB7EnabledSbvp","title":"buttonLockEnabled","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"abstract":[],"type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","title":"buttonLockEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json index e0250b2..0dde414 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json @@ -1 +1 @@ -{"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled"]}],"metadata":{"symbolKind":"property","title":"buttonUnlockEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV19buttonUnlockEnabledSbvp","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled"]}],"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonUnlockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonUnlockEnabled"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"symbolKind":"property","role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV19buttonUnlockEnabledSbvp","roleHeading":"Instance Property","title":"buttonUnlockEnabled","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","abstract":[],"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonUnlockEnabled"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json index e058add..dc91edb 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","interfaceLanguage":"swift"},"metadata":{"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB5DelaySivp","title":"postponedLockDelay","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"postponedLockDelay"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","title":"postponedLockDelay","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay"},"sections":[],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB5DelaySivp","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","title":"postponedLockDelay","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"postponedLockDelay"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","type":"topic","title":"postponedLockDelay","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockDelay","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json index fdce36b..4469726 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json @@ -1 +1 @@ -{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"postponedLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled"]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"postponedLockEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB7EnabledSbvp"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","kind":"symbol","role":"symbol","abstract":[]}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"postponedLockEnabled"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB7EnabledSbvp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"postponedLockEnabled","symbolKind":"property","roleHeading":"Instance Property"},"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","role":"symbol","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","abstract":[],"type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json index 0ccba97..1947728 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json @@ -1 +1 @@ -{"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"pullSpringDuration","externalID":"s:9TedeeLock0A14DeviceSettingsV18pullSpringDurationSivp","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringDuration"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"roleHeading":"Instance Property"},"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"languages":["swift"]}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","title":"TedeeDeviceSettings","kind":"symbol","abstract":[],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","abstract":[],"title":"pullSpringDuration","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringDuration"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"modules":[{"name":"TedeeLock"}],"title":"pullSpringDuration","externalID":"s:9TedeeLock0A14DeviceSettingsV18pullSpringDurationSivp","symbolKind":"property","role":"symbol","roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"kind":"symbol","abstract":[],"type":"topic","title":"pullSpringDuration","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json index 45600ce..b505dac 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled"},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"pullSpringEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV17pullSpringEnabledSbvp","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","title":"pullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled"]}],"sections":[],"metadata":{"symbolKind":"property","roleHeading":"Instance Property","title":"pullSpringEnabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV17pullSpringEnabledSbvp","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"title":"pullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager.json index 8668405..2d80af3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager.json @@ -1 +1 @@ -{"topicSections":[{"title":"Configuration","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"title":"Connection"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"],"title":"Comunication"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"},{"title":"Instance Methods","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)"]},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"],"generated":true}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s8SendableP","doc:\/\/TedeeLock\/ScA","doc:\/\/TedeeLock\/12_Concurrency8AnyActorP"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager"]}],"kind":"symbol","metadata":{"role":"symbol","symbolKind":"class","fragments":[{"kind":"keyword","text":"class"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"roleHeading":"Class","title":"TedeeLockManager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC"},"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"final"},{"kind":"text","text":" "},{"text":"actor","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"content","content":[{"text":"Overview","type":"heading","level":2,"anchor":"Overview"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","interfaceLanguage":"swift"},"sections":[],"abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")>","kind":"text"}],"abstract":[{"type":"text","text":"Subscribe to this stream to receive bluetooth notifications send by the lock"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"abstract":[{"text":"Register the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","title":"registerLock(_:registration:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getVersion"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier","text":"TedeeSoftwareVersion"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","kind":"symbol","title":"getVersion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","role":"symbol","abstract":[{"type":"text","text":"Get firmware version"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/12_Concurrency8AnyActorP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/12_Concurrency8AnyActorP","title":"_Concurrency.AnyActor"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getAddLockData"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","role":"symbol","abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"title":"sendCommand(_:command:parameters:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameters"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]?)"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"type":"topic","abstract":[{"type":"text","text":"Get lock settings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","kind":"symbol","title":"getLockSettings(from:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"},"doc://TedeeLock/ScA":{"identifier":"doc:\/\/TedeeLock\/ScA","title":"_Concurrency.Actor","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","title":"unsecureConnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"final","kind":"keyword"},{"text":" ","kind":"text"},{"text":"actor","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeLockManager","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]},{"content":[{"type":"heading","level":2,"text":"Overview","anchor":"Overview"}],"kind":"content"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"topicSections":[{"title":"Configuration","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]},{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"]},{"title":"Comunication","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"]},{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)"],"title":"Instance Methods"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"],"title":"Enumerations"},{"generated":true,"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]}],"abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager"]}],"metadata":{"fragments":[{"kind":"keyword","text":"class"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"role":"symbol","roleHeading":"Class","externalID":"s:9TedeeLock0aB7ManagerC","modules":[{"name":"TedeeLock"}],"symbolKind":"class","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"title":"TedeeLockManager"},"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s8SendableP","doc:\/\/TedeeLock\/ScA","doc:\/\/TedeeLock\/12_Concurrency8AnyActorP"],"title":"Conforms To","type":"conformsTo","kind":"relationships"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","abstract":[{"text":"Get lock settings","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockSettings","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","kind":"typeIdentifier","text":"TedeeDeviceSettings"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)","title":"getLockSettings(from:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/12_Concurrency8AnyActorP":{"title":"_Concurrency.AnyActor","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/12_Concurrency8AnyActorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification"},{"text":")>","kind":"text"}],"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"title":"registerLock(_:registration:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","abstract":[{"text":"Register the lock","type":"text"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/ScA":{"title":"_Concurrency.Actor","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/ScA"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"abstract":[{"text":"Get firmware version","type":"text"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","type":"topic","title":"getVersion(from:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAddLockData"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeAddLock","preciseIdentifier":"s:9TedeeLock0a3AddB0V"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"title":"sendCommand(_:command:parameters:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"This method allows to send command to the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error","type":"text"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","title":"unsecureConnect(_:)","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json index f5e1492..faa2deb 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json @@ -1 +1 @@ -{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"},"metadata":{"role":"collectionGroup","title":"Actor Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"article","schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"topicSections":[{"title":"Instance Methods","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"assertIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":")","kind":"text"}],"role":"symbol","title":"assertIsolated(_:file:line:)","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"title":"preconditionIsolated(_:file:line:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","abstract":[],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"assumeIsolated","kind":"identifier"},{"text":"<","kind":"text"},{"text":"T","kind":"genericParameter"},{"text":">((","kind":"text"},{"kind":"keyword","text":"isolated"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"}],"title":"assumeIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"metadata":{"roleHeading":"API Collection","role":"collectionGroup","title":"Actor Implementations","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"topicSections":[{"title":"Instance Methods","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"},"sections":[],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","type":"topic","kind":"symbol","title":"assertIsolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assertIsolated"},{"kind":"text","text":"(() -> "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier","text":"StaticString"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"kind":"text","text":")"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","type":"topic","kind":"symbol","title":"preconditionIsolated(_:file:line:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"title":"assumeIsolated(_:file:line:)","abstract":[],"kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assumeIsolated"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">(("},{"text":"isolated","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json index e12b62f..0d38144 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"text":"nonisolated","kind":"attribute"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"assertIsolated","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"kind":"internalParam","text":"message"},{"text":": ","kind":"text"},{"kind":"attribute","text":"@autoclosure "},{"text":"() -> ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":" = String(), "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#line"},{"text":")","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"title":"assertIsolated(_:file:line:)","extendedModule":"_Concurrency","roleHeading":"Instance Method","role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"externalID":"s:ScA12_ConcurrencyE14assertIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"assertIsolated"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}],"symbolKind":"method","platforms":[{"introducedAt":"13.0","unavailable":false,"name":"iOS","beta":false,"deprecated":false},{"beta":false,"deprecated":false,"name":"macOS","unavailable":false,"introducedAt":"10.15"},{"introducedAt":"13.0","name":"tvOS","beta":false,"deprecated":false,"unavailable":false},{"unavailable":false,"name":"watchOS","deprecated":false,"beta":false,"introducedAt":"6.0"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Actor.assertIsolated(_:file:line:)","type":"codeVoice"},{"text":".","type":"text"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"sections":[],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"assertIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":")","kind":"text"}],"role":"symbol","title":"assertIsolated(_:file:line:)","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Actor.assertIsolated(_:file:line:)"},{"type":"text","text":"."}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"text","text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n"},{"kind":"attribute","text":"nonisolated"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"assertIsolated","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"message"},{"text":": ","kind":"text"},{"kind":"attribute","text":"@autoclosure "},{"kind":"text","text":"() -> "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":" = String(), "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier","text":"StaticString"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#fileID"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#line"},{"text":")","kind":"text"}],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"metadata":{"extendedModule":"_Concurrency","externalID":"s:ScA12_ConcurrencyE14assertIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","platforms":[{"unavailable":false,"deprecated":false,"introducedAt":"13.0","beta":false,"name":"iOS"},{"introducedAt":"10.15","unavailable":false,"deprecated":false,"name":"macOS","beta":false},{"name":"tvOS","introducedAt":"13.0","unavailable":false,"beta":false,"deprecated":false},{"unavailable":false,"beta":false,"deprecated":false,"introducedAt":"6.0","name":"watchOS"}],"role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"title":"assertIsolated(_:file:line:)","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"assertIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"text":"UInt","preciseIdentifier":"s:Su","kind":"typeIdentifier"},{"kind":"text","text":")"}],"symbolKind":"method"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","type":"topic","kind":"symbol","title":"assertIsolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assertIsolated"},{"kind":"text","text":"(() -> "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier","text":"StaticString"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"kind":"text","text":")"}],"abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json index 14e9ac7..afde4ae 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"kind":"attribute","text":"nonisolated"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"assumeIsolated","kind":"identifier"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">("},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"kind":"internalParam","text":"operation"},{"text":": (","kind":"text"},{"text":"isolated","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#fileID"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#line"},{"text":") ","kind":"text"},{"text":"rethrows","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}]}],"kind":"declarations"}],"sections":[],"metadata":{"platforms":[{"unavailable":false,"introducedAt":"13.0","deprecated":false,"name":"iOS","beta":false},{"unavailable":false,"name":"macOS","deprecated":false,"beta":false,"introducedAt":"10.15"},{"beta":false,"name":"tvOS","introducedAt":"13.0","unavailable":false,"deprecated":false},{"introducedAt":"6.0","name":"watchOS","unavailable":false,"beta":false,"deprecated":false}],"roleHeading":"Instance Method","extendedModule":"_Concurrency","externalID":"s:ScA12_ConcurrencyE14assumeIsolated_4file4lineqd__qd__xYiKXE_s12StaticStringVSutKlF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","modules":[{"relatedModules":["_Concurrency"],"name":"TedeeLock"}],"symbolKind":"method","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"assumeIsolated","kind":"identifier"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"text":">((","kind":"text"},{"text":"isolated","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"}],"role":"symbol","title":"assumeIsolated(_:file:line:)"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Actor.assumeIsolated(_:file:line:)","type":"codeVoice"},{"type":"text","text":"."}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","abstract":[],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"assumeIsolated","kind":"identifier"},{"text":"<","kind":"text"},{"text":"T","kind":"genericParameter"},{"text":">((","kind":"text"},{"kind":"keyword","text":"isolated"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"}],"title":"assumeIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","interfaceLanguage":"swift"},"metadata":{"platforms":[{"unavailable":false,"introducedAt":"13.0","beta":false,"name":"iOS","deprecated":false},{"beta":false,"introducedAt":"10.15","name":"macOS","deprecated":false,"unavailable":false},{"beta":false,"deprecated":false,"name":"tvOS","unavailable":false,"introducedAt":"13.0"},{"beta":false,"introducedAt":"6.0","deprecated":false,"name":"watchOS","unavailable":false}],"role":"symbol","roleHeading":"Instance Method","extendedModule":"_Concurrency","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"symbolKind":"method","title":"assumeIsolated(_:file:line:)","externalID":"s:ScA12_ConcurrencyE14assumeIsolated_4file4lineqd__qd__xYiKXE_s12StaticStringVSutKlF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"assumeIsolated"},{"text":"<","kind":"text"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">(("},{"text":"isolated","kind":"keyword"},{"kind":"text","text":" "},{"text":"Self","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"StaticString","preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"rethrows","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"}]},"kind":"symbol","sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"text":"nonisolated","kind":"attribute"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"assumeIsolated"},{"text":"<","kind":"text"},{"kind":"genericParameter","text":"T"},{"text":">(","kind":"text"},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"operation","kind":"internalParam"},{"text":": (","kind":"text"},{"kind":"keyword","text":"isolated"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":" = ","kind":"text"},{"text":"#line","kind":"keyword"},{"text":") ","kind":"text"},{"text":"rethrows","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}],"platforms":["macOS"]}]}],"abstract":[{"type":"text","text":"Inherited from "},{"code":"Actor.assumeIsolated(_:file:line:)","type":"codeVoice"},{"text":".","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"title":"assumeIsolated(_:file:line:)","abstract":[],"kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assumeIsolated"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">(("},{"text":"isolated","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json index 983aabb..5ef21b7 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)"},"abstract":[{"text":"Close lock","type":"text"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"closeLock","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"},{"text":" = .none) ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier"}],"languages":["swift"]}]},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}]},{"name":"parameter","content":[{"type":"paragraph","inlineContent":[{"text":"Specify the behavour of the close lock action","type":"text"}]}]}]},{"kind":"content","content":[{"type":"heading","text":"Return Value","anchor":"return-value","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":"Response from the lock with either success or reason why close lock action cannot be performed by the lock"}]}]}],"seeAlsoSections":[{"generated":true,"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"]}],"metadata":{"title":"closeLock(_:parameter:)","symbolKind":"method","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"closeLock"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC05closeB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameter"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":" = .none) ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"languages":["swift"],"platforms":["macOS"]}]},{"parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}]},{"content":[{"inlineContent":[{"type":"text","text":"Specify the behavour of the close lock action"}],"type":"paragraph"}],"name":"parameter"}],"kind":"parameters"},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"inlineContent":[{"type":"text","text":"Response from the lock with either success or reason why close lock action cannot be performed by the lock"}],"type":"paragraph"}]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)"},"abstract":[{"type":"text","text":"Close lock"}],"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"}],"kind":"symbol","metadata":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"closeLock","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"role":"symbol","title":"closeLock(_:parameter:)","externalID":"s:9TedeeLock0aB7ManagerC05closeB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF","extendedModule":"TedeeLock","symbolKind":"method","roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json index 9886ecf..2c46b22 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json @@ -1 +1 @@ -{"seeAlsoSections":[{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeCertificate","preciseIdentifier":"s:9TedeeLock0A11CertificateV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"},{"kind":"text","text":", "},{"text":"keepConnection","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"kind":"text","text":" = false) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"languages":["swift"]}]},{"parameters":[{"name":"keepConnection","content":[{"type":"paragraph","inlineContent":[{"text":"If true, allows to automatically reconnect if lock disconnect with us. To end connection and do not reconnect automaticallly, use disconnect(_:). Default value is ‘false’","type":"text"}]}]}],"kind":"parameters"},{"kind":"content","content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"content":[{"inlineContent":[{"type":"text","text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.invalidCertificate, TedeeLockManager.Errors.secureSessionFailed, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected, TedeeLockManager.Errors.missingSignedDateTime, TedeeLockManager.Errors.signedDateTimeProvider"}],"type":"paragraph"}],"name":"Throws","style":"note","type":"aside"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","abstract":[{"text":"Method to find and connect to the Lock via bluetooth.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"method","title":"connect(_:certificate:keepConnection:)","externalID":"s:9TedeeLock0aB7ManagerC7connect_11certificate14keepConnectionyAA0A12SerialNumberV_AA0A11CertificateVSbtYaKF","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"connect"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"extendedModule":"TedeeLock","roleHeading":"Instance Method"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)"]}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC7connect_11certificate14keepConnectionyAA0A12SerialNumberV_AA0A11CertificateVSbtYaKF","symbolKind":"method","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":", "},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"text":"TedeeCertificate","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV"},{"kind":"text","text":", "},{"text":"keepConnection","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"title":"connect(_:certificate:keepConnection:)","roleHeading":"Instance Method","role":"symbol"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"connect","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":" = false) ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}]}],"kind":"declarations"},{"parameters":[{"content":[{"type":"paragraph","inlineContent":[{"text":"If true, allows to automatically reconnect if lock disconnect with us. To end connection and do not reconnect automaticallly, use disconnect(_:). Default value is ‘false’","type":"text"}]}],"name":"keepConnection"}],"kind":"parameters"},{"content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"style":"note","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.invalidCertificate, TedeeLockManager.Errors.secureSessionFailed, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected, TedeeLockManager.Errors.missingSignedDateTime, TedeeLockManager.Errors.signedDateTimeProvider"}]}],"type":"aside","name":"Throws"}],"kind":"content"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","seeAlsoSections":[{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json index 92b0225..c9957d6 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream"]}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)"],"title":"Connection","generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"lazy","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"AsyncStream","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":"> { "},{"kind":"keyword","text":"get"},{"text":" ","kind":"text"},{"text":"set","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]},{"kind":"content","content":[{"text":"Return Value","type":"heading","level":2,"anchor":"return-value"},{"inlineContent":[{"type":"text","text":""},{"text":" ","type":"text"},{"text":"- ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},{"text":": contains serial number, status and optionally error that caused disconnection","type":"text"}],"type":"paragraph"}]}],"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0aB7ManagerC22connectionStatusStreamScSyAA0a10ConnectionE0VGvp","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"text":"<","kind":"text"},{"text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","kind":"typeIdentifier"},{"kind":"text","text":">"}],"symbolKind":"property","role":"symbol","title":"connectionStatusStream","modules":[{"name":"TedeeLock"}]},"abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC22connectionStatusStreamScSyAA0a10ConnectionE0VGvp","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:ScS","text":"AsyncStream","kind":"typeIdentifier"},{"kind":"text","text":"<"},{"text":"TedeeConnectionStatus","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"title":"connectionStatusStream","symbolKind":"property","modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"lazy"},{"text":" ","kind":"text"},{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"connectionStatusStream"},{"text":": ","kind":"text"},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"text":"<","kind":"text"},{"text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},{"kind":"text","text":"> { "},{"text":"get","kind":"keyword"},{"text":" ","kind":"text"},{"text":"set","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"]}],"kind":"declarations"},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":""},{"type":"text","text":" "},{"type":"text","text":"- "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","isActive":true,"type":"reference"},{"type":"text","text":": contains serial number, status and optionally error that caused disconnection"}]}],"kind":"content"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)"],"title":"Connection","generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json index f09bdb9..3d29335 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"seeAlsoSections":[{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"languages":["swift"],"platforms":["macOS"]}]},{"content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"type":"aside","content":[{"inlineContent":[{"text":"TedeeLockManager.Errors.notConnected","type":"text"}],"type":"paragraph"}],"name":"Throws","style":"note"}],"kind":"content"}],"metadata":{"symbolKind":"method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"externalID":"s:9TedeeLock0aB7ManagerC10disconnectyyAA0A12SerialNumberVYaKF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"disconnect(_:)","roleHeading":"Instance Method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"type":"text","text":"This method allows to disconnect with connected lock."}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnect"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"platforms":["macOS"]}],"kind":"declarations"},{"content":[{"level":2,"anchor":"discussion","text":"Discussion","type":"heading"},{"name":"Throws","type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notConnected","type":"text"}]}]}],"kind":"content"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true,"title":"Connection"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"disconnect(_:)","symbolKind":"method","externalID":"s:9TedeeLock0aB7ManagerC10disconnectyyAA0A12SerialNumberVYaKF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnect"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}],"roleHeading":"Instance Method"},"abstract":[{"type":"text","text":"This method allows to disconnect with connected lock."}],"references":{"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors.json index 1ab72ad..eac404c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors.json @@ -1 +1 @@ -{"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors"],"traits":[{"interfaceLanguage":"swift"}]}],"relationshipsSections":[{"title":"Conforms To","type":"conformsTo","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/s8SendableP"]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","interfaceLanguage":"swift"},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"],"generated":true,"title":"Default Implementations"}],"metadata":{"title":"TedeeLockManager.Errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO","extendedModule":"TedeeLock","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"roleHeading":"Enumeration","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"enum"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"title":"TedeeLockManager.Errors.noPermission","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyRegistered"}],"title":"TedeeLockManager.Errors.alreadyRegistered","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered","type":"topic"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","title":"TedeeLockManager.Errors.cantSendCommand","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantParseResponse","kind":"identifier"}],"title":"TedeeLockManager.Errors.cantParseResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","kind":"symbol","title":"TedeeLockManager.Errors.alreadyConnecting","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnecting"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","title":"TedeeLockManager.Errors.waitingForResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"waitingForResponse","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"signedDateTimeProvider","kind":"identifier"},{"kind":"text","text":"("},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":")","kind":"text"}],"kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"title":"TedeeLockManager.Errors.missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"kind":"symbol","title":"TedeeLockManager.Errors.secureSessionFailed","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"kind":"symbol","title":"TedeeLockManager.Errors.notConnected","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","role":"symbol"},"doc://TedeeLock/s5ErrorP":{"type":"unresolvable","title":"Swift.Error","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnected"}],"abstract":[],"title":"TedeeLockManager.Errors.alreadyConnected","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","abstract":[],"kind":"symbol","title":"TedeeLockManager.Errors.disconnected","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"title":"TedeeLockManager.Errors.invalidCertificate","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"title":"TedeeLockManager.Errors.invalidResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidResponse"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"title":"TedeeLockManager.Errors.deviceNotInitialized","role":"symbol","abstract":[],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"title":"TedeeLockManager.Errors.systemPermissions","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"platforms":["macOS"]}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"title":"TedeeLockManager.Errors","role":"symbol","symbolKind":"enum","roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}]},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/s8SendableP"],"title":"Conforms To","kind":"relationships","type":"conformsTo"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors"]}],"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"title":"Error Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"title":"TedeeLockManager.Errors.alreadyConnected","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"alreadyConnected","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","abstract":[]},"doc://TedeeLock/s5ErrorP":{"identifier":"doc:\/\/TedeeLock\/s5ErrorP","title":"Swift.Error","type":"unresolvable"},"doc://TedeeLock/s8SendableP":{"identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","type":"topic","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","title":"TedeeLockManager.Errors.waitingForResponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","kind":"symbol","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"waitingForResponse"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","title":"TedeeLockManager.Errors.deviceNotInitialized","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","kind":"symbol","title":"TedeeLockManager.Errors.notConnected","type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidResponse","kind":"identifier"}],"abstract":[],"title":"TedeeLockManager.Errors.invalidResponse","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting","title":"TedeeLockManager.Errors.alreadyConnecting","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","role":"symbol","title":"TedeeLockManager.Errors.noPermission","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantParseResponse"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","title":"TedeeLockManager.Errors.cantParseResponse","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","title":"TedeeLockManager.Errors.systemPermissions","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","abstract":[],"title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyRegistered"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Error","preciseIdentifier":"s:s5ErrorP"},{"kind":"text","text":")"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"role":"symbol","title":"TedeeLockManager.Errors.missingSignedDateTime","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantSendCommand"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","title":"TedeeLockManager.Errors.cantSendCommand","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","abstract":[],"title":"TedeeLockManager.Errors.secureSessionFailed","type":"topic","kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidCertificate"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate","title":"TedeeLockManager.Errors.invalidCertificate","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","title":"TedeeLockManager.Errors.disconnected","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json index 3533b18..6701e5b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyConnected","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockManager.Errors.alreadyConnected","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO16alreadyConnectedyA2EmF"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnected"}],"platforms":["macOS"],"languages":["swift"]}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnected"}],"abstract":[],"title":"TedeeLockManager.Errors.alreadyConnected","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","metadata":{"roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnected"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO16alreadyConnectedyA2EmF","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockManager.Errors.alreadyConnected","symbolKind":"case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyConnected","kind":"identifier"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"title":"TedeeLockManager.Errors.alreadyConnected","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"alreadyConnected","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json index 715a9a6..2f4cb5e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","interfaceLanguage":"swift"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"alreadyConnecting","kind":"identifier"}],"platforms":["macOS"]}]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.alreadyConnecting","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyConnectingyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}],"roleHeading":"Case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","kind":"symbol","title":"TedeeLockManager.Errors.alreadyConnecting","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnecting"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnecting"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyConnectingyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.alreadyConnecting","roleHeading":"Case","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting","title":"TedeeLockManager.Errors.alreadyConnecting","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json index eb5287d..b14adde 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json @@ -1 +1 @@ -{"metadata":{"symbolKind":"case","title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyRegisteredyA2EmF","role":"symbol","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyRegistered"}],"title":"TedeeLockManager.Errors.alreadyRegistered","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"metadata":{"symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyRegisteredyA2EmF","roleHeading":"Case"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","abstract":[],"title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyRegistered"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json index 65aca74..6ae0aea 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"symbolKind":"case","title":"TedeeLockManager.Errors.cantParseResponse","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17cantParseResponseyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"cantParseResponse","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"cantParseResponse","kind":"identifier"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantParseResponse","kind":"identifier"}],"title":"TedeeLockManager.Errors.cantParseResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"cantParseResponse","kind":"identifier"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"title":"TedeeLockManager.Errors.cantParseResponse","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantParseResponse"}],"roleHeading":"Case","symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17cantParseResponseyA2EmF","modules":[{"name":"TedeeLock"}]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantParseResponse"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","title":"TedeeLockManager.Errors.cantParseResponse","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json index 1469cff..0fbc4b3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand"]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15cantSendCommandyA2EmF","title":"TedeeLockManager.Errors.cantSendCommand","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantSendCommand"}],"symbolKind":"case","roleHeading":"Case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","title":"TedeeLockManager.Errors.cantSendCommand","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"cantSendCommand"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand"]}],"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.cantSendCommand","symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15cantSendCommandyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"roleHeading":"Case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantSendCommand"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","title":"TedeeLockManager.Errors.cantSendCommand","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json index b2e4181..fdd3251 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"role":"symbol","title":"TedeeLockManager.Errors.deviceNotInitialized","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"deviceNotInitialized","kind":"identifier"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO20deviceNotInitializedyA2EmF"},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized"]}],"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"title":"TedeeLockManager.Errors.deviceNotInitialized","role":"symbol","abstract":[],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"deviceNotInitialized","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO20deviceNotInitializedyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"deviceNotInitialized","kind":"identifier"}],"title":"TedeeLockManager.Errors.deviceNotInitialized"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","title":"TedeeLockManager.Errors.deviceNotInitialized","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json index 39e96fb..3350e7e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnected","kind":"identifier"}],"languages":["swift"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12disconnectedyA2EmF","role":"symbol","roleHeading":"Case","title":"TedeeLockManager.Errors.disconnected","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}]},"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","abstract":[],"kind":"symbol","title":"TedeeLockManager.Errors.disconnected","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12disconnectedyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"title":"TedeeLockManager.Errors.disconnected","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}]}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected","interfaceLanguage":"swift"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","title":"TedeeLockManager.Errors.disconnected","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json index 4143a94..6066533 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json @@ -1 +1 @@ -{"kind":"article","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Error Implementations"},"sections":[],"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription"],"title":"Instance Properties"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"role":"symbol","title":"localizedDescription","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations"]}],"kind":"article","metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Error Implementations"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"topicSections":[{"title":"Instance Properties","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"title":"localizedDescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","type":"topic","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json index 58dd997..706afeb 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","metadata":{"symbolKind":"case","title":"TedeeLockManager.Errors.invalidCertificate","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidCertificate"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18invalidCertificateyA2EmF"},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidCertificate"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"title":"TedeeLockManager.Errors.invalidCertificate","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18invalidCertificateyA2EmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.invalidCertificate","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"role":"symbol"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate"},"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidCertificate"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate","title":"TedeeLockManager.Errors.invalidCertificate","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json index 99043f8..6a70d1b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters"]}],"kind":"symbol","metadata":{"role":"symbol","roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.invalidParameters","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17invalidParametersyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidParameters"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17invalidParametersyA2EmF","title":"TedeeLockManager.Errors.invalidParameters","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidParameters","kind":"identifier"}]}]}],"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","type":"topic","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json index 49615ce..4d46a44 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"title":"TedeeLockManager.Errors.invalidResponse","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidResponse"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15invalidResponseyA2EmF","roleHeading":"Case","role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidResponse","kind":"identifier"}],"languages":["swift"]}]}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"title":"TedeeLockManager.Errors.invalidResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidResponse"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse"]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidResponse","kind":"identifier"}],"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.invalidResponse","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15invalidResponseyA2EmF"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse"},"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidResponse","kind":"identifier"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidResponse","kind":"identifier"}],"abstract":[],"title":"TedeeLockManager.Errors.invalidResponse","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json index aca4cba..e0ad4a8 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription"},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"type":"text","text":"."}],"metadata":{"symbolKind":"property","extendedModule":"Swift","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0aB7ManagerC6ErrorsO","title":"localizedDescription","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"platforms":[{"introducedAt":"8.0","beta":false,"name":"iOS","unavailable":false,"deprecated":false},{"name":"macOS","beta":false,"introducedAt":"10.10","deprecated":false,"unavailable":false},{"unavailable":false,"beta":false,"name":"tvOS","introducedAt":"9.0","deprecated":false},{"beta":false,"introducedAt":"2.0","unavailable":false,"name":"watchOS","deprecated":false}],"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"role":"symbol","title":"localizedDescription","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file +{"metadata":{"roleHeading":"Instance Property","platforms":[{"beta":false,"deprecated":false,"unavailable":false,"introducedAt":"8.0","name":"iOS"},{"introducedAt":"10.10","beta":false,"name":"macOS","deprecated":false,"unavailable":false},{"deprecated":false,"introducedAt":"9.0","unavailable":false,"name":"tvOS","beta":false},{"name":"watchOS","introducedAt":"2.0","unavailable":false,"beta":false,"deprecated":false}],"symbolKind":"property","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"extendedModule":"Swift","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0aB7ManagerC6ErrorsO","role":"symbol","title":"localizedDescription"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"title":"localizedDescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","type":"topic","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"title":"Error Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json index 1c283ae..fb386a9 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO21missingSignedDateTimeyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"missingSignedDateTime","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.missingSignedDateTime","symbolKind":"case"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"missingSignedDateTime","kind":"identifier"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"title":"TedeeLockManager.Errors.missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime"},"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"missingSignedDateTime","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager.Errors.missingSignedDateTime","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO21missingSignedDateTimeyA2EmF","symbolKind":"case","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"role":"symbol","title":"TedeeLockManager.Errors.missingSignedDateTime","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json index e97bf4c..d774946 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission"},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}]}]}],"sections":[],"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.noPermission","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12noPermissionyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"title":"TedeeLockManager.Errors.noPermission","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"metadata":{"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12noPermissionyA2EmF","role":"symbol"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","role":"collection","type":"topic","kind":"symbol","title":"TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"type":"text","text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","role":"symbol","title":"TedeeLockManager.Errors.noPermission","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json index 2386ca2..56e5f34 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json @@ -1 +1 @@ -{"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected"},"metadata":{"title":"TedeeLockManager.Errors.notConnected","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConnected","kind":"identifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12notConnectedyA2EmF","roleHeading":"Case","role":"symbol"},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConnected","kind":"identifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"kind":"symbol","title":"TedeeLockManager.Errors.notConnected","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","role":"symbol"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"notConnected","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.notConnected","symbolKind":"case","role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12notConnectedyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}]},"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","kind":"symbol","title":"TedeeLockManager.Errors.notConnected","type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json index f0c0c53..0fff214 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO8notFoundyA2EmF","title":"TedeeLockManager.Errors.notFound","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"notFound"}],"roleHeading":"Case","symbolKind":"case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"notFound","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"title":"TedeeLockManager.Errors.notFound","symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO8notFoundyA2EmF","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"roleHeading":"Case","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json index 3a2c37b..69d8cd2 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","interfaceLanguage":"swift"},"sections":[],"metadata":{"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO19secureSessionFailedyA2EmF","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"secureSessionFailed"}],"title":"TedeeLockManager.Errors.secureSessionFailed","role":"symbol"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"secureSessionFailed","kind":"identifier"}],"platforms":["macOS"]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"kind":"symbol","title":"TedeeLockManager.Errors.secureSessionFailed","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO19secureSessionFailedyA2EmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager.Errors.secureSessionFailed","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"secureSessionFailed","kind":"identifier"}],"languages":["swift"]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","abstract":[],"title":"TedeeLockManager.Errors.secureSessionFailed","type":"topic","kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json index 9a43c7e..3387e0d 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)"]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"signedDateTimeProvider","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:s5ErrorP","text":"Error","kind":"typeIdentifier"},{"kind":"text","text":")"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"role":"symbol","title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO22signedDateTimeProvideryAEs5Error_pcAEmF","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"text":"Error","preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier"},{"kind":"text","text":")"}],"modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"signedDateTimeProvider","kind":"identifier"},{"kind":"text","text":"("},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":")","kind":"text"}],"kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"signedDateTimeProvider","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP","text":"Error"},{"kind":"text","text":")"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)"]}],"kind":"symbol","metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO22signedDateTimeProvideryAEs5Error_pcAEmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP","text":"Error"},{"text":")","kind":"text"}],"roleHeading":"Case","symbolKind":"case","title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","role":"symbol"},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Error","preciseIdentifier":"s:s5ErrorP"},{"kind":"text","text":")"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json index 488b34f..d39552e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17systemPermissionsyA2EmF","roleHeading":"Case","symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.systemPermissions","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"systemPermissions","kind":"identifier"}],"role":"symbol"},"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"systemPermissions","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"title":"TedeeLockManager.Errors.systemPermissions","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.systemPermissions","role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17systemPermissionsyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","title":"TedeeLockManager.Errors.systemPermissions","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json index 2ab1606..ab85a9a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"waitingForResponse","kind":"identifier"}]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.waitingForResponse","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18waitingForResponseyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"waitingForResponse"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","title":"TedeeLockManager.Errors.waitingForResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"waitingForResponse","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18waitingForResponseyA2EmF","symbolKind":"case","roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"waitingForResponse","kind":"identifier"}],"title":"TedeeLockManager.Errors.waitingForResponse"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"waitingForResponse","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","title":"TedeeLockManager.Errors.waitingForResponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","kind":"symbol","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"waitingForResponse"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json index da10cde..451edf1 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Get add lock data."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAddLockData","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","text":"TedeeAddLock","preciseIdentifier":"s:9TedeeLock0a3AddB0V","kind":"typeIdentifier"}]}],"kind":"declarations"},{"parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}]}],"kind":"parameters"},{"content":[{"level":2,"type":"heading","anchor":"return-value","text":"Return Value"},{"type":"paragraph","inlineContent":[{"text":"Respons with data from lock that is required to add this lock to the account.","type":"text"}]}],"kind":"content"}],"sections":[],"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC06getAddB4DatayAA0aeB0VAA0A12SerialNumberVYaKF","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","role":"symbol","title":"getAddLockData(_:)","symbolKind":"method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAddLockData","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock","kind":"typeIdentifier"}],"extendedModule":"TedeeLock"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getAddLockData"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"}}} \ No newline at end of file +{"abstract":[{"text":"Get add lock data.","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"]}],"sections":[],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC06getAddB4DatayAA0aeB0VAA0A12SerialNumberVYaKF","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAddLockData"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock","kind":"typeIdentifier"}],"roleHeading":"Instance Method","title":"getAddLockData(_:)","extendedModule":"TedeeLock","role":"symbol","symbolKind":"method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAddLockData","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0a3AddB0V","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"typeIdentifier","text":"TedeeAddLock"}]}]},{"parameters":[{"content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}],"name":"serialNumber"}],"kind":"parameters"},{"content":[{"level":2,"type":"heading","text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Respons with data from lock that is required to add this lock to the account."}]}],"kind":"content"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAddLockData"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeAddLock","preciseIdentifier":"s:9TedeeLock0a3AddB0V"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json index d80c277..b4887f7 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Get lock settings"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","interfaceLanguage":"swift"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockSettings","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeDeviceSettings","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"platforms":["macOS"]}]},{"kind":"content","content":[{"type":"heading","anchor":"return-value","level":2,"text":"Return Value"},{"type":"paragraph","inlineContent":[{"text":"Responds with lock settings data","type":"text"}]}]},{"kind":"content","content":[{"anchor":"discussion","level":2,"text":"Discussion","type":"heading"},{"type":"unorderedList","items":[{"content":[{"inlineContent":[{"text":"Parameter: serialNumber: Serial number of the lock","type":"text"}],"type":"paragraph"}]}]}]}],"sections":[],"metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","kind":"typeIdentifier","text":"TedeeDeviceSettings"}],"symbolKind":"method","role":"symbol","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","title":"getLockSettings(from:)","externalID":"s:9TedeeLock0aB7ManagerC03getB8Settings4fromAA0a6DeviceE0VAA0A12SerialNumberV_tYaKF"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"type":"topic","abstract":[{"type":"text","text":"Get lock settings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","kind":"symbol","title":"getLockSettings(from:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}]},{"content":[{"level":2,"text":"Return Value","type":"heading","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Responds with lock settings data"}]}],"kind":"content"},{"content":[{"level":2,"text":"Discussion","anchor":"discussion","type":"heading"},{"items":[{"content":[{"inlineContent":[{"type":"text","text":"Parameter: serialNumber: Serial number of the lock"}],"type":"paragraph"}]}],"type":"unorderedList"}],"kind":"content"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","interfaceLanguage":"swift"},"sections":[],"metadata":{"title":"getLockSettings(from:)","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockSettings","kind":"identifier"},{"kind":"text","text":"("},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"roleHeading":"Instance Method","externalID":"s:9TedeeLock0aB7ManagerC03getB8Settings4fromAA0a6DeviceE0VAA0A12SerialNumberV_tYaKF","symbolKind":"method","role":"symbol","extendedModule":"TedeeLock"},"abstract":[{"type":"text","text":"Get lock settings"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","abstract":[{"text":"Get lock settings","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockSettings","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","kind":"typeIdentifier","text":"TedeeDeviceSettings"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)","title":"getLockSettings(from:)","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json index 79f7fef..35e631e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Get current lock state"}],"seeAlsoSections":[{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)"],"generated":true}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"}],"symbolKind":"method","role":"symbol","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","title":"getLockState(_:)","externalID":"s:9TedeeLock0aB7ManagerC03getB5StateyAA0abE0VAA0A12SerialNumberVYaKF"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)"]}],"sections":[],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockState","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]}],"kind":"declarations"},{"parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}]}],"kind":"parameters"},{"kind":"content","content":[{"level":2,"text":"Return Value","type":"heading","anchor":"return-value"},{"inlineContent":[{"text":"Current lock state received from the lock","type":"text"}],"type":"paragraph"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"seeAlsoSections":[{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)"],"generated":true}],"abstract":[{"type":"text","text":"Get current lock state"}],"metadata":{"symbolKind":"method","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier","text":"TedeeLockState"}],"externalID":"s:9TedeeLock0aB7ManagerC03getB5StateyAA0abE0VAA0A12SerialNumberVYaKF","role":"symbol","title":"getLockState(_:)","roleHeading":"Instance Method","extendedModule":"TedeeLock"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockState","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV"}],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"text":"Serial number of the lock","type":"text"}]}]}]},{"kind":"content","content":[{"text":"Return Value","anchor":"return-value","level":2,"type":"heading"},{"type":"paragraph","inlineContent":[{"text":"Current lock state received from the lock","type":"text"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json index 1721efc..a1c63b5 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"symbolKind":"method","modules":[{"name":"TedeeLock"}],"extendedModule":"TedeeLock","role":"symbol","roleHeading":"Instance Method","title":"getVersion(from:)","externalID":"s:9TedeeLock0aB7ManagerC10getVersion4fromAA0a8SoftwareE0VAA0A12SerialNumberV_tYaKF"},"kind":"symbol","abstract":[{"type":"text","text":"Get firmware version"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"getVersion","kind":"identifier"},{"kind":"text","text":"("},{"text":"from","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSoftwareVersion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}]}]},{"kind":"content","content":[{"type":"heading","text":"Return Value","level":2,"anchor":"return-value"},{"inlineContent":[{"type":"text","text":"Responds with lock firmware version data"}],"type":"paragraph"}]},{"kind":"content","content":[{"anchor":"discussion","level":2,"text":"Discussion","type":"heading"},{"items":[{"content":[{"inlineContent":[{"type":"text","text":"Parameter: serialNumber: Serial number of the lock"}],"type":"paragraph"}]}],"type":"unorderedList"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getVersion"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier","text":"TedeeSoftwareVersion"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","kind":"symbol","title":"getVersion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","role":"symbol","abstract":[{"type":"text","text":"Get firmware version"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"}}} \ No newline at end of file +{"sections":[],"abstract":[{"type":"text","text":"Get firmware version"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getVersion"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"languages":["swift"],"platforms":["macOS"]}]},{"kind":"content","content":[{"text":"Return Value","anchor":"return-value","type":"heading","level":2},{"inlineContent":[{"type":"text","text":"Responds with lock firmware version data"}],"type":"paragraph"}]},{"kind":"content","content":[{"type":"heading","anchor":"discussion","text":"Discussion","level":2},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Parameter: serialNumber: Serial number of the lock","type":"text"}]}]}],"type":"unorderedList"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC10getVersion4fromAA0a8SoftwareE0VAA0A12SerialNumberV_tYaKF","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion","kind":"typeIdentifier"}],"symbolKind":"method","extendedModule":"TedeeLock","role":"symbol","title":"getVersion(from:)"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","interfaceLanguage":"swift"},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"abstract":[{"text":"Get firmware version","type":"text"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","type":"topic","title":"getVersion(from:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json index ae127ca..8043171 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)"]}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"title":"isConnected(_:)","externalID":"s:9TedeeLock0aB7ManagerC11isConnectedySbAA0A12SerialNumberVYaF","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","symbolKind":"method","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)"},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true,"title":"Connection"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"role":"symbol","title":"isConnected(_:)","symbolKind":"method","roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC11isConnectedySbAA0A12SerialNumberVYaF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"title":"Connection"}],"abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json index 63866da..fb44620 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json @@ -1 +1 @@ -{"abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}],"seeAlsoSections":[{"title":"Comunication","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)"],"generated":true}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"lazy","kind":"keyword"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"text":"AsyncStream","preciseIdentifier":"s:ScS","kind":"typeIdentifier"},{"text":"<(","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")> { ","kind":"text"},{"text":"get","kind":"keyword"},{"text":" ","kind":"text"},{"text":"set","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"]}]},{"kind":"content","content":[{"type":"heading","anchor":"return-value","level":2,"text":"Return Value"},{"inlineContent":[{"type":"text","text":""},{"text":" ","type":"text"},{"type":"text","text":"- "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","type":"reference","isActive":true},{"text":": contains serial number and notification send by the lock","type":"text"}],"type":"paragraph"}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"metadata":{"role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:ScS","kind":"typeIdentifier","text":"AsyncStream"},{"kind":"text","text":"<("},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification","kind":"typeIdentifier"},{"text":")>","kind":"text"}],"title":"notificationsStream","symbolKind":"property","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC19notificationsStreamScSyAA0A12NotificationVGvp"},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")>","kind":"text"}],"abstract":[{"type":"text","text":"Subscribe to this stream to receive bluetooth notifications send by the lock"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","role":"symbol","abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"title":"sendCommand(_:command:parameters:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameters"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]?)"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream"]}],"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"seeAlsoSections":[{"title":"Comunication","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)"],"generated":true}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"lazy","kind":"keyword"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","text":"TedeeNotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")> { ","kind":"text"},{"text":"get","kind":"keyword"},{"kind":"text","text":" "},{"text":"set","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"},{"content":[{"text":"Return Value","type":"heading","level":2,"anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":""},{"type":"text","text":" "},{"text":"- ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","isActive":true,"type":"reference"},{"text":": contains serial number and notification send by the lock","type":"text"}]}],"kind":"content"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"title":"notificationsStream","symbolKind":"property","roleHeading":"Instance Property","externalID":"s:9TedeeLock0aB7ManagerC19notificationsStreamScSyAA0A12NotificationVGvp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notificationsStream"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"text":"TedeeNotification","preciseIdentifier":"s:9TedeeLock0A12NotificationV","kind":"typeIdentifier"},{"kind":"text","text":")>"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","interfaceLanguage":"swift"},"abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification"},{"text":")>","kind":"text"}],"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"title":"sendCommand(_:command:parameters:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"This method allows to send command to the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json index 5f3fc8e..04af0e2 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","interfaceLanguage":"swift"},"abstract":[{"text":"Open lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"openLock"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":" = .none) ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"inlineContent":[{"text":"Serial number of the lock","type":"text"}],"type":"paragraph"}]},{"name":"parameter","content":[{"inlineContent":[{"text":"Specify the behavour of the open lock action","type":"text"}],"type":"paragraph"}]}]},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"inlineContent":[{"text":"Response from the lock with either success or reason why open lock action cannot be performed by the lock","type":"text"}],"type":"paragraph"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC04openB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF","symbolKind":"method","title":"openLock(_:parameter:)","role":"symbol","extendedModule":"TedeeLock","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"openLock"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeLockOperationParameters","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier"}],"roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":" = .none) ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"languages":["swift"]}],"kind":"declarations"},{"parameters":[{"name":"serialNumber","content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Specify the behavour of the open lock action"}]}],"name":"parameter"}],"kind":"parameters"},{"kind":"content","content":[{"level":2,"type":"heading","anchor":"return-value","text":"Return Value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock with either success or reason why open lock action cannot be performed by the lock","type":"text"}]}]}],"metadata":{"extendedModule":"TedeeLock","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}],"title":"openLock(_:parameter:)","externalID":"s:9TedeeLock0aB7ManagerC04openB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF","modules":[{"name":"TedeeLock"}],"symbolKind":"method","roleHeading":"Instance Method","role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)"],"traits":[{"interfaceLanguage":"swift"}]}],"seeAlsoSections":[{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"generated":true}],"abstract":[{"text":"Open lock","type":"text"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json index 35dea69..3b88505 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json @@ -1 +1 @@ -{"metadata":{"role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"roleHeading":"Instance Method","platforms":[{"introducedAt":"13.0","name":"iOS","beta":false,"unavailable":false,"deprecated":false},{"name":"macOS","beta":false,"deprecated":false,"introducedAt":"10.15","unavailable":false},{"name":"tvOS","unavailable":false,"deprecated":false,"beta":false,"introducedAt":"13.0"},{"introducedAt":"6.0","unavailable":false,"deprecated":false,"beta":false,"name":"watchOS"}],"extendedModule":"_Concurrency","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"preconditionIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","kind":"typeIdentifier","text":"UInt"},{"kind":"text","text":")"}],"title":"preconditionIsolated(_:file:line:)","externalID":"s:ScA12_ConcurrencyE20preconditionIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","symbolKind":"method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Actor.preconditionIsolated(_:file:line:)"},{"type":"text","text":"."}],"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)"]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"text":"nonisolated","kind":"attribute"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"message"},{"kind":"text","text":": "},{"text":"@autoclosure ","kind":"attribute"},{"text":"() -> ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":" = String(), "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","preciseIdentifier":"s:Su","kind":"typeIdentifier"},{"text":" = ","kind":"text"},{"text":"#line","kind":"keyword"},{"kind":"text","text":")"}]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"title":"preconditionIsolated(_:file:line:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"sections":[],"metadata":{"modules":[{"relatedModules":["_Concurrency"],"name":"TedeeLock"}],"title":"preconditionIsolated(_:file:line:)","externalID":"s:ScA12_ConcurrencyE20preconditionIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","platforms":[{"deprecated":false,"beta":false,"introducedAt":"13.0","unavailable":false,"name":"iOS"},{"beta":false,"unavailable":false,"name":"macOS","introducedAt":"10.15","deprecated":false},{"introducedAt":"13.0","deprecated":false,"name":"tvOS","unavailable":false,"beta":false},{"name":"watchOS","beta":false,"introducedAt":"6.0","deprecated":false,"unavailable":false}],"roleHeading":"Instance Method","extendedModule":"_Concurrency","role":"symbol","symbolKind":"method","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"kind":"text","text":"(() -> "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"text","text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n"},{"kind":"attribute","text":"nonisolated"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"preconditionIsolated","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"message","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"attribute","text":"@autoclosure "},{"text":"() -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":" = String(), ","kind":"text"},{"kind":"externalParam","text":"file"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","preciseIdentifier":"s:Su","kind":"typeIdentifier"},{"kind":"text","text":" = "},{"text":"#line","kind":"keyword"},{"kind":"text","text":")"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Actor.preconditionIsolated(_:file:line:)"},{"type":"text","text":"."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","type":"topic","kind":"symbol","title":"preconditionIsolated(_:file:line:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/publickey.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/publickey.json index edeaa1b..cafa2d1 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/publickey.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/publickey.json @@ -1 +1 @@ -{"abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","seeAlsoSections":[{"title":"Configuration","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"title":"publicKey","role":"symbol","symbolKind":"property","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"roleHeading":"Type Property","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC9publicKeySSvpZ"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/publickey"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"publicKey","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"text":" { ","kind":"text"},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"],"title":"Configuration"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","interfaceLanguage":"swift"},"abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Type Property","symbolKind":"property","externalID":"s:9TedeeLock0aB7ManagerC9publicKeySSvpZ","title":"publicKey"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"publicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":" { ","kind":"text"},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/publickey"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json index eafc834..e45fc37 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Pull lock"}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"generated":true,"title":"Commands"}],"kind":"symbol","metadata":{"symbolKind":"method","title":"pullLock(_:)","role":"symbol","modules":[{"name":"TedeeLock"}],"extendedModule":"TedeeLock","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"roleHeading":"Instance Method","externalID":"s:9TedeeLock0aB7ManagerC04pullB0yAA0aB15OperationResultOAA0A12SerialNumberVYaKF"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullLock"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"serialNumber"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"}]}]},{"kind":"parameters","parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}],"name":"serialNumber"}]},{"kind":"content","content":[{"text":"Return Value","type":"heading","level":2,"anchor":"return-value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock with either success or reason why pull lock action cannot be performed by the lock","type":"text"}]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"method","extendedModule":"TedeeLock","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullLock","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)","roleHeading":"Instance Method","role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC04pullB0yAA0aB15OperationResultOAA0A12SerialNumberVYaKF"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","interfaceLanguage":"swift"},"kind":"symbol","abstract":[{"type":"text","text":"Pull lock"}],"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"}]}]},{"kind":"parameters","parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}],"name":"serialNumber"}]},{"kind":"content","content":[{"text":"Return Value","level":2,"type":"heading","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock with either success or reason why pull lock action cannot be performed by the lock","type":"text"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json index 492e2bf..2e524d0 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","interfaceLanguage":"swift"},"metadata":{"symbolKind":"method","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"registerLock"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","text":"TedeeRegisterLock"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"extendedModule":"TedeeLock","externalID":"s:9TedeeLock0aB7ManagerC08registerB0_12registrationyAA0A12SerialNumberV_AA0a8RegisterB0VtYaKF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"registerLock(_:registration:)","roleHeading":"Instance Method"},"kind":"symbol","abstract":[{"type":"text","text":"Register the lock"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"registerLock"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"registration"},{"text":": ","kind":"text"},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"languages":["swift"]}]},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"text":"Serial number of the lock","type":"text"}],"type":"paragraph"}],"name":"serialNumber"},{"name":"registration","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Data returned by the Tedee Api after adding new lock"}]}]}]},{"kind":"content","content":[{"level":2,"text":"Return Value","type":"heading","anchor":"return-value"},{"inlineContent":[{"text":"Upon success, lock witll be automaticlly disconnect and should be ready to establish secure connection.","type":"text"}],"type":"paragraph"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"abstract":[{"text":"Register the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","title":"registerLock(_:registration:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"registerLock","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"kind":"text","text":", "},{"kind":"externalParam","text":"registration"},{"kind":"text","text":": "},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}]}]},{"parameters":[{"content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}],"name":"serialNumber"},{"name":"registration","content":[{"inlineContent":[{"text":"Data returned by the Tedee Api after adding new lock","type":"text"}],"type":"paragraph"}]}],"kind":"parameters"},{"kind":"content","content":[{"type":"heading","text":"Return Value","anchor":"return-value","level":2},{"inlineContent":[{"type":"text","text":"Upon success, lock witll be automaticlly disconnect and should be ready to establish secure connection."}],"type":"paragraph"}]}],"abstract":[{"text":"Register the lock","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"registerLock"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","text":"TedeeRegisterLock"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}],"role":"symbol","symbolKind":"method","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","title":"registerLock(_:registration:)","externalID":"s:9TedeeLock0aB7ManagerC08registerB0_12registrationyAA0A12SerialNumberV_AA0a8RegisterB0VtYaKF"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","url":"\/documentation\/tedeelock\/tedeeserialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"abstract":[{"type":"text","text":"Used for identification of the lock."}],"type":"topic","navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"title":"registerLock(_:registration:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","abstract":[{"text":"Register the lock","type":"text"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json index d444027..3194488 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json @@ -1 +1 @@ -{"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"],"generated":true,"title":"Comunication"}],"abstract":[{"text":"This method allows to send command to the lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC11sendCommand_7command10parameterss5UInt8V_SayAHGSgtAA0A12SerialNumberV_AhItYaKF","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"command","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameters","kind":"externalParam"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"]) ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> ("},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"role":"symbol","symbolKind":"method","extendedModule":"TedeeLock","roleHeading":"Instance Method","title":"sendCommand(_:command:parameters:)","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)"]}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"command","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameters"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"] = []) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", ["},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"]?)","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"text":"Serial number of the connected device","type":"text"}]}]},{"name":"command","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"command that will be send to the lock"}]}]},{"name":"parameters","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"optional parameters that will be send alongside the command"}]}]}]},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"inlineContent":[{"text":"Response from the lock and optionally array of additional data returned by the lock","type":"text"}],"type":"paragraph"}],"kind":"content"},{"content":[{"text":"Discussion","anchor":"discussion","level":2,"type":"heading"},{"name":"Throws","type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notConnected, TedeeLockManager.Errors.cantSendCommand, TedeeLockManager.Errors.cantParseResponse, TedeeLockManager.Errors.waitingForResponse","type":"text"}]}]}],"kind":"content"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")>","kind":"text"}],"abstract":[{"type":"text","text":"Subscribe to this stream to receive bluetooth notifications send by the lock"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","role":"symbol","abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"title":"sendCommand(_:command:parameters:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameters"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]?)"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"sendCommand","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameters"},{"kind":"text","text":": ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"] = []) ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> ("},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", [","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"]?)"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"text":"Serial number of the connected device","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"command that will be send to the lock","type":"text"}]}],"name":"command"},{"name":"parameters","content":[{"type":"paragraph","inlineContent":[{"text":"optional parameters that will be send alongside the command","type":"text"}]}]}]},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock and optionally array of additional data returned by the lock","type":"text"}]}]},{"kind":"content","content":[{"type":"heading","anchor":"discussion","text":"Discussion","level":2},{"name":"Throws","type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notConnected, TedeeLockManager.Errors.cantSendCommand, TedeeLockManager.Errors.cantParseResponse, TedeeLockManager.Errors.waitingForResponse","type":"text"}]}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)"]}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"],"generated":true,"title":"Comunication"}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"sendCommand","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"symbolKind":"method","roleHeading":"Instance Method","extendedModule":"TedeeLock","title":"sendCommand(_:command:parameters:)","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC11sendCommand_7command10parameterss5UInt8V_SayAHGSgtAA0A12SerialNumberV_AhItYaKF","role":"symbol"},"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification"},{"text":")>","kind":"text"}],"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"title":"sendCommand(_:command:parameters:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"This method allows to send command to the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json index e927100..11d28a8 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}],"metadata":{"symbolKind":"method","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC25setSignedDateTimeProvideryyAA0aefgH0_pSgF","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"setSignedDateTimeProvider","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP"},{"kind":"text","text":"?)"}],"title":"setSignedDateTimeProvider(_:)"},"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey"],"title":"Configuration","generated":true}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"kind":"internalParam","text":"provider"},{"kind":"text","text":": "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"kind":"text","text":"?)"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"}}} \ No newline at end of file +{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"},"abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"title":"Configuration","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey"],"generated":true}],"metadata":{"roleHeading":"Instance Method","title":"setSignedDateTimeProvider(_:)","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC25setSignedDateTimeProvideryyAA0aefgH0_pSgF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"role":"symbol","symbolKind":"method"},"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"setSignedDateTimeProvider","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"provider","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","kind":"typeIdentifier","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"title":"TedeeLockManager","abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/shared.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/shared.json index 78790f0..35116b7 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/shared.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/shared.json @@ -1 +1 @@ -{"kind":"symbol","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","text":"TedeeLockManager","kind":"typeIdentifier"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/shared"]}],"metadata":{"title":"shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6sharedACvpZ","symbolKind":"property","role":"symbol","roleHeading":"Type Property","modules":[{"name":"TedeeLock"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","interfaceLanguage":"swift"},"seeAlsoSections":[{"title":"Configuration","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"kind":"symbol","metadata":{"roleHeading":"Type Property","symbolKind":"property","externalID":"s:9TedeeLock0aB7ManagerC6sharedACvpZ","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"shared"},{"text":": ","kind":"text"},{"text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC","kind":"typeIdentifier"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/shared"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","text":"TedeeLockManager","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"],"title":"Configuration","generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json index ae2400f..60acd7c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC15unsecureConnectyyAA0A12SerialNumberVYaKF","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unsecureConnect"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"method","extendedModule":"TedeeLock","roleHeading":"Instance Method","title":"unsecureConnect(_:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"type":"text","text":"Method to find and unsecurely connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unsecureConnect","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}]}]},{"kind":"content","content":[{"text":"Discussion","anchor":"discussion","level":2,"type":"heading"},{"name":"Throws","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected"}]}],"style":"note","type":"aside"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","title":"unsecureConnect(_:)"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unsecureConnect","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"languages":["swift"],"platforms":["macOS"]}]},{"content":[{"text":"Discussion","level":2,"anchor":"discussion","type":"heading"},{"content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected","type":"text"}]}],"style":"note","type":"aside","name":"Throws"}],"kind":"content"}],"metadata":{"role":"symbol","title":"unsecureConnect(_:)","symbolKind":"method","extendedModule":"TedeeLock","roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC15unsecureConnectyyAA0A12SerialNumberVYaKF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unsecureConnect","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}]},"sections":[],"kind":"symbol","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error","type":"text"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","title":"unsecureConnect(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters.json index 50c6329..cde8cd1 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters"]}],"kind":"symbol","metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"enum","roleHeading":"Enumeration","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"title":"TedeeLockOperationParameters","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}],"externalID":"s:9TedeeLock0aB19OperationParametersO"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"],"generated":true,"title":"Default Implementations"}],"relationshipsSections":[{"kind":"relationships","title":"Conforms To","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/SQ":{"title":"Swift.Equatable","identifier":"doc:\/\/TedeeLock\/SQ","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","kind":"article","abstract":[],"title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","title":"TedeeLockOperationParameters.auto","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"auto","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","type":"topic","title":"TedeeLockOperationParameters.autoWhenLockedThenPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoWhenLockedThenPull"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","kind":"symbol","type":"topic","title":"init(rawValue:)","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","type":"topic","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","kind":"symbol","title":"TedeeLockOperationParameters.autoNeverPull"},"doc://TedeeLock/SH":{"title":"Swift.Hashable","identifier":"doc:\/\/TedeeLock\/SH","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","role":"symbol","title":"TedeeLockOperationParameters.force","type":"topic","abstract":[{"type":"text","text":"Forces lock to unlock lock till jam."},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.autoAlwaysPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"abstract":[],"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations","title":"RawRepresentable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"kind":"symbol","title":"TedeeLockOperationParameters.withoutPull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"withoutPull"}],"abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"abstract":[{"type":"text","text":"default behaviour of lock operation"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","title":"TedeeLockOperationParameters.none","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}]},"doc://TedeeLock/SY":{"title":"Swift.RawRepresentable","identifier":"doc:\/\/TedeeLock\/SY","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","kind":"symbol","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"metadata":{"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"symbolKind":"enum","externalID":"s:9TedeeLock0aB19OperationParametersO","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}],"role":"symbol","roleHeading":"Enumeration","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters"},"kind":"symbol","relationshipsSections":[{"type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"],"kind":"relationships","title":"Conforms To"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull"],"title":"Enumeration Cases"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"],"generated":true,"title":"Default Implementations"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","title":"init(rawValue:)","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":")"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"withoutPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.withoutPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"title":"TedeeLockOperationParameters.autoWhenLockedThenPull","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull"},"doc://TedeeLock/SH":{"identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/SQ":{"identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","title":"TedeeLockOperationParameters.force","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","type":"topic","abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"title":"TedeeLockOperationParameters.none","abstract":[{"type":"text","text":"default behaviour of lock operation"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","title":"TedeeLockOperationParameters.auto","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","type":"topic","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","title":"TedeeLockOperationParameters.autoAlwaysPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","abstract":[],"title":"RawRepresentable Implementations","type":"topic","role":"collectionGroup","kind":"article","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"},"doc://TedeeLock/SY":{"type":"unresolvable","title":"Swift.RawRepresentable","identifier":"doc:\/\/TedeeLock\/SY"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","title":"TedeeLockOperationParameters.autoNeverPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoNeverPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json index a5857f2..3f970b4 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations"]]},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","symbolKind":"op","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","extendedModule":"Swift","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","roleHeading":"Operator"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)"},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","abstract":[{"text":"Inherited from ","type":"text"},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","kind":"article","abstract":[],"title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","abstract":[],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations"]]},"sections":[],"metadata":{"extendedModule":"Swift","role":"symbol","roleHeading":"Operator","symbolKind":"op","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"title":"!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/auto.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/auto.json index c88af75..e8a329e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/auto.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/auto.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockOperationParameters.auto","externalID":"s:9TedeeLock0aB19OperationParametersO4autoyA2CmF"},"sections":[],"abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/auto"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","title":"TedeeLockOperationParameters.auto","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"auto","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto"},"sections":[],"metadata":{"title":"TedeeLockOperationParameters.auto","role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB19OperationParametersO4autoyA2CmF","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/auto"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","title":"TedeeLockOperationParameters.auto","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","type":"topic","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json index 17f8d53..d87b472 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"metadata":{"roleHeading":"Case","role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"externalID":"s:9TedeeLock0aB19OperationParametersO14autoAlwaysPullyA2CmF","title":"TedeeLockOperationParameters.autoAlwaysPull"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.autoAlwaysPull"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"kind":"symbol","metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters.autoAlwaysPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoAlwaysPull"}],"externalID":"s:9TedeeLock0aB19OperationParametersO14autoAlwaysPullyA2CmF","roleHeading":"Case","symbolKind":"case"},"sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoAlwaysPull"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","title":"TedeeLockOperationParameters.autoAlwaysPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json index 2bd9880..b410814 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","interfaceLanguage":"swift"},"sections":[],"metadata":{"title":"TedeeLockOperationParameters.autoNeverPull","externalID":"s:9TedeeLock0aB19OperationParametersO13autoNeverPullyA2CmF","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","kind":"symbol","title":"TedeeLockOperationParameters.autoNeverPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoNeverPull","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB19OperationParametersO13autoNeverPullyA2CmF","symbolKind":"case","roleHeading":"Case","role":"symbol","title":"TedeeLockOperationParameters.autoNeverPull"},"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","title":"TedeeLockOperationParameters.autoNeverPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoNeverPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json index c59ac85..661fecf 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB19OperationParametersO22autoWhenLockedThenPullyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoWhenLockedThenPull"}],"title":"TedeeLockOperationParameters.autoWhenLockedThenPull"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","type":"topic","title":"TedeeLockOperationParameters.autoWhenLockedThenPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoWhenLockedThenPull"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB19OperationParametersO22autoWhenLockedThenPullyA2CmF","roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.autoWhenLockedThenPull","role":"symbol","symbolKind":"case"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"title":"TedeeLockOperationParameters.autoWhenLockedThenPull","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json index ec17dd7..2d102a0 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}]}],"kind":"declarations"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"Case","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}],"externalID":"s:9TedeeLock0aB19OperationParametersO24autoWhenUnlockedThenPullyA2CmF","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","modules":[{"name":"TedeeLock"}],"role":"symbol"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull"]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","kind":"symbol","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"roleHeading":"Case","externalID":"s:9TedeeLock0aB19OperationParametersO24autoWhenUnlockedThenPullyA2CmF","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}],"title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","symbolKind":"case"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json index 31f3076..6395094 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json @@ -1 +1 @@ -{"kind":"article","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)"],"generated":true,"title":"Operators"}],"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Equatable Implementations"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","abstract":[],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"sections":[],"kind":"article","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"roleHeading":"API Collection","role":"collectionGroup","modules":[{"name":"TedeeLock"}],"title":"Equatable Implementations"},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)"],"generated":true}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"title":"!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/force.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/force.json index 2bdd6d0..16de2d1 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/force.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/force.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/force"]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"force"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force"},"sections":[],"abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}],"metadata":{"title":"TedeeLockOperationParameters.force","externalID":"s:9TedeeLock0aB19OperationParametersO5forceyA2CmF","modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"force"}],"roleHeading":"Case"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","role":"symbol","title":"TedeeLockOperationParameters.force","type":"topic","abstract":[{"type":"text","text":"Forces lock to unlock lock till jam."},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"sections":[],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB19OperationParametersO5forceyA2CmF","symbolKind":"case","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters.force","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"force"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"force","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/force"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","title":"TedeeLockOperationParameters.force","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","type":"topic","abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json index cff067d..2f6b11e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","interfaceLanguage":"swift"},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"into"},{"text":" ","kind":"text"},{"text":"hasher","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}]}],"kind":"declarations"}],"metadata":{"title":"hash(into:)","conformance":{"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}]},"extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"symbolKind":"method","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"text":"(","kind":"text"},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}],"role":"symbol","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","roleHeading":"Instance Method"},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"abstract":[{"type":"text","text":"Inherited from "},{"code":"RawRepresentable.hash(into:)","type":"codeVoice"},{"type":"text","text":"."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"abstract":[],"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations","title":"RawRepresentable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","title":"hash(into:)","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"into"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"kind":"text","text":")"}],"type":"topic","abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"metadata":{"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"kind":"externalParam","text":"into"},{"text":": ","kind":"text"},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","preciseIdentifier":"s:s6HasherV","kind":"typeIdentifier"},{"kind":"text","text":")"}],"extendedModule":"Swift","title":"hash(into:)","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}]},"symbolKind":"method"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)"},"sections":[],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hash(into:)"},{"text":".","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"into"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"hasher"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","abstract":[],"title":"RawRepresentable Implementations","type":"topic","role":"collectionGroup","kind":"article","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"text":"Available when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","title":"hash(into:)"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json index f93e2b1..fcabc10 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json @@ -1 +1 @@ -{"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":" { ","kind":"text"},{"kind":"keyword","text":"get"},{"text":" }","kind":"text"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"},"abstract":[{"type":"text","text":"Inherited from "},{"code":"RawRepresentable.hashValue","type":"codeVoice"},{"type":"text","text":"."}],"metadata":{"symbolKind":"property","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}],"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}]},"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"extendedModule":"Swift","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","role":"symbol","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"title":"hashValue","roleHeading":"Instance Property"},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"conformance":{"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}]},"kind":"symbol","abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue","type":"topic","title":"hashValue","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"abstract":[],"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations","title":"RawRepresentable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue","interfaceLanguage":"swift"},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"RawRepresentable.hashValue","type":"codeVoice"},{"type":"text","text":"."}],"sections":[],"metadata":{"conformance":{"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}]},"symbolKind":"property","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"role":"symbol","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","title":"hashValue","roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":" { ","kind":"text"},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","abstract":[],"title":"RawRepresentable Implementations","type":"topic","role":"collectionGroup","kind":"article","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"kind":"symbol","title":"hashValue","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json index d96ad98..1d37909 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)"]}],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.init(rawValue:)"},{"type":"text","text":"."}],"kind":"symbol","metadata":{"role":"symbol","roleHeading":"Initializer","symbolKind":"init","title":"init(rawValue:)","externalID":"s:9TedeeLock0aB19OperationParametersO8rawValueACSgs5UInt8V_tcfc","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":")","kind":"text"}],"modules":[{"name":"TedeeLock"}]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","kind":"symbol","type":"topic","title":"init(rawValue:)","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","role":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"text":"?(","kind":"text"},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":")","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"metadata":{"symbolKind":"init","role":"symbol","externalID":"s:9TedeeLock0aB19OperationParametersO8rawValueACSgs5UInt8V_tcfc","title":"init(rawValue:)","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"roleHeading":"Initializer"},"abstract":[{"type":"text","text":"Inherited from "},{"code":"RawRepresentable.init(rawValue:)","type":"codeVoice"},{"type":"text","text":"."}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"role":"collection","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","title":"init(rawValue:)","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":")"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/none.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/none.json index 55b9afc..8d67877 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/none.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/none.json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0aB19OperationParametersO4noneyA2CmF","title":"TedeeLockOperationParameters.none","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"none","kind":"identifier"}],"symbolKind":"case","modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"type":"text","text":"default behaviour of lock operation"}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"none","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/none"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"abstract":[{"type":"text","text":"default behaviour of lock operation"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","title":"TedeeLockOperationParameters.none","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"abstract":[{"text":"default behaviour of lock operation","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/none"]}],"metadata":{"title":"TedeeLockOperationParameters.none","roleHeading":"Case","role":"symbol","externalID":"s:9TedeeLock0aB19OperationParametersO4noneyA2CmF","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"none"}],"symbolKind":"case"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"title":"TedeeLockOperationParameters.none","abstract":[{"type":"text","text":"default behaviour of lock operation"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json index 00be907..6da4132 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json @@ -1 +1 @@ -{"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"],"generated":true,"title":"Instance Properties"},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)"],"title":"Instance Methods"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"metadata":{"modules":[{"name":"TedeeLock"}],"title":"RawRepresentable Implementations","role":"collectionGroup","roleHeading":"API Collection"},"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"conformance":{"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}]},"kind":"symbol","abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue","type":"topic","title":"hashValue","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","title":"hash(into:)","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"into"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"kind":"text","text":")"}],"type":"topic","abstract":[]}}} \ No newline at end of file +{"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","role":"collectionGroup","title":"RawRepresentable Implementations"},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"article","sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"],"generated":true,"title":"Instance Properties"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)"],"generated":true,"title":"Instance Methods"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"kind":"symbol","title":"hashValue","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"text":"Available when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","title":"hash(into:)"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json index 6ad8193..046c1bc 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.unlockOrPull","externalID":"s:9TedeeLock0aB19OperationParametersO12unlockOrPullyA2CmF","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case","roleHeading":"Case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlockOrPull","kind":"identifier"}],"platforms":["macOS"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","type":"topic","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"symbolKind":"case","roleHeading":"Case","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters.unlockOrPull","externalID":"s:9TedeeLock0aB19OperationParametersO12unlockOrPullyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockOrPull"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockOrPull"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json index ebe974a..558442a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0aB19OperationParametersO11withoutPullyA2CmF","roleHeading":"Case","title":"TedeeLockOperationParameters.withoutPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"withoutPull","kind":"identifier"}],"symbolKind":"case","modules":[{"name":"TedeeLock"}],"role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"withoutPull"}],"languages":["swift"]}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"kind":"symbol","title":"TedeeLockOperationParameters.withoutPull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"withoutPull"}],"abstract":[],"type":"topic"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"withoutPull"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","interfaceLanguage":"swift"},"metadata":{"role":"symbol","title":"TedeeLockOperationParameters.withoutPull","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB19OperationParametersO11withoutPullyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"withoutPull","kind":"identifier"}],"symbolKind":"case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"withoutPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.withoutPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult.json index 64cd1dd..5a177d0 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult.json @@ -1 +1 @@ -{"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"],"generated":true,"title":"Default Implementations"}],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult"]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"symbolKind":"enum","externalID":"s:9TedeeLock0aB15OperationResultO","roleHeading":"Enumeration","role":"symbol","title":"TedeeLockOperationResult","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}]},"relationshipsSections":[{"kind":"relationships","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"],"title":"Conforms To"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","title":"TedeeLockOperationResult.noPermission","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"noPermission"}],"type":"topic","abstract":[{"text":"No permission to send command to lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","title":"TedeeLockOperationResult.busy","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"busy"}],"type":"topic","abstract":[{"text":"Lock is currently performing other operations. Wait for changing state.","type":"text"}]},"doc://TedeeLock/SH":{"title":"Swift.Hashable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"type":"topic","abstract":[{"text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","title":"TedeeLockOperationResult.notConfigured","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConfigured"}],"type":"topic","abstract":[{"text":". Lock auto pull spring feature is turned off.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","abstract":[{"text":"Invalid params passed to lock.","type":"text"}],"title":"TedeeLockOperationResult.invalidParameter","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/SY":{"title":"Swift.RawRepresentable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SY"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}],"type":"topic","abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"notCalibrated","kind":"identifier"}],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"dismounted"}],"title":"TedeeLockOperationResult.dismounted"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"title":"TedeeLockOperationResult.error","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"abstract":[{"text":"Error occured.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"abstract":[{"text":"Operation accepted.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"symbolKind":"enum","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationResult"}],"roleHeading":"Enumeration","externalID":"s:9TedeeLock0aB15OperationResultO","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}]},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)"],"title":"Initializers"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"],"generated":true}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult"]}],"relationshipsSections":[{"type":"conformsTo","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"],"title":"Conforms To"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"},"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","abstract":[{"type":"text","text":"Lock is currently performing other operations. Wait for changing state."}],"title":"TedeeLockOperationResult.busy","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"busy"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","title":"TedeeLockOperationResult.noPermission","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","abstract":[{"type":"text","text":"No permission to send command to lock"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","title":"TedeeLockOperationResult.error","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","abstract":[{"type":"text","text":"Error occured."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":")"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","abstract":[]},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"title":"TedeeLockOperationResult.invalidParameter","kind":"symbol","abstract":[{"type":"text","text":"Invalid params passed to lock."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","title":"Equatable Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notCalibrated"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","abstract":[],"role":"collectionGroup","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","title":"TedeeLockOperationResult.dismounted","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}]},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","abstract":[{"type":"text","text":". Lock auto pull spring feature is turned off."}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"notConfigured"}],"kind":"symbol","title":"TedeeLockOperationResult.notConfigured"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","kind":"symbol","abstract":[{"type":"text","text":"Operation accepted."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success"},"doc://TedeeLock/SY":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SY","title":"Swift.RawRepresentable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","abstract":[{"type":"text","text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter)."}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","type":"topic","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json index ae50ebd..e3cf30b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json @@ -1 +1 @@ -{"sections":[],"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","extendedModule":"Swift","roleHeading":"Operator","role":"symbol","title":"!=(_:_:)","symbolKind":"op","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","interfaceLanguage":"swift"},"kind":"symbol","abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations"]]},"metadata":{"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","roleHeading":"Operator","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"extendedModule":"Swift","title":"!=(_:_:)","role":"symbol","symbolKind":"op"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Inherited from "},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"text":".","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","title":"Equatable Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/busy.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/busy.json index 71c070b..93743f3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/busy.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/busy.json @@ -1 +1 @@ -{"metadata":{"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO4busyyA2CmF","symbolKind":"case","title":"TedeeLockOperationResult.busy","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/busy"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","interfaceLanguage":"swift"},"abstract":[{"text":"Lock is currently performing other operations. Wait for changing state.","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","title":"TedeeLockOperationResult.busy","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"busy"}],"type":"topic","abstract":[{"text":"Lock is currently performing other operations. Wait for changing state.","type":"text"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationResult.busy","symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO4busyyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}],"roleHeading":"Case"},"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/busy"]}],"kind":"symbol","abstract":[{"type":"text","text":"Lock is currently performing other operations. Wait for changing state."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","abstract":[{"type":"text","text":"Lock is currently performing other operations. Wait for changing state."}],"title":"TedeeLockOperationResult.busy","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"busy"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json index f09cfa9..8740040 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO10dismountedyA2CmF","symbolKind":"case","title":"TedeeLockOperationResult.dismounted","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"dismounted"}],"roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"dismounted","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"dismounted"}],"title":"TedeeLockOperationResult.dismounted"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"kind":"symbol","abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"languages":["swift"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO10dismountedyA2CmF","roleHeading":"Case","symbolKind":"case","title":"TedeeLockOperationResult.dismounted","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","title":"TedeeLockOperationResult.dismounted","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json index 3a3e962..22a2e05 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json @@ -1 +1 @@ -{"kind":"article","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)"],"title":"Operators"}],"metadata":{"role":"collectionGroup","title":"Equatable Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"title":"!=(_:_:)"}}} \ No newline at end of file +{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","interfaceLanguage":"swift"},"kind":"article","schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Equatable Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)"],"title":"Operators","generated":true}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/error.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/error.json index 346ad49..2425acd 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/error.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/error.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"abstract":[{"text":"Error occured.","type":"text"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"error","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/error"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","interfaceLanguage":"swift"},"kind":"symbol","metadata":{"symbolKind":"case","roleHeading":"Case","title":"TedeeLockOperationResult.error","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"error","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO5erroryA2CmF","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"title":"TedeeLockOperationResult.error","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"abstract":[{"text":"Error occured.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error"},"kind":"symbol","sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"title":"TedeeLockOperationResult.error","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO5erroryA2CmF","roleHeading":"Case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"error","kind":"identifier"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/error"]}],"abstract":[{"type":"text","text":"Error occured."}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","title":"TedeeLockOperationResult.error","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","abstract":[{"type":"text","text":"Error occured."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json index 77d68c6..10315f4 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hash(into:)"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)"]}],"sections":[],"metadata":{"extendedModule":"Swift","symbolKind":"method","title":"hash(into:)","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","conformance":{"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":"."}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"kind":"text","text":" "},{"preciseIdentifier":"s:s6HasherV","text":"Hasher","kind":"typeIdentifier"},{"text":")","kind":"text"}],"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"text":"(","kind":"text"},{"text":"into","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"hasher","kind":"internalParam"},{"kind":"text","text":": "},{"text":"inout","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Hasher","kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"role":"symbol","title":"hash(into:)","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}],"kind":"symbol","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"into"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"hasher"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"preciseIdentifier":"s:s6HasherV","text":"Hasher","kind":"typeIdentifier"},{"text":")","kind":"text"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)"]}],"abstract":[{"text":"Inherited from ","type":"text"},{"code":"RawRepresentable.hash(into:)","type":"codeVoice"},{"type":"text","text":"."}],"sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"title":"hash(into:)","symbolKind":"method","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}],"availabilityPrefix":[{"type":"text","text":"Available when"}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hash"},{"text":"(","kind":"text"},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV"},{"kind":"text","text":")"}],"roleHeading":"Instance Method","extendedModule":"Swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","abstract":[],"role":"collectionGroup","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)","title":"hash(into:)","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","preciseIdentifier":"s:s6HasherV","kind":"typeIdentifier"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json index 14f4ade..1af3b39 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","interfaceLanguage":"swift"},"kind":"symbol","abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hashValue"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"metadata":{"externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","role":"symbol","extendedModule":"Swift","roleHeading":"Instance Property","title":"hashValue","symbolKind":"property","conformance":{"availabilityPrefix":[{"type":"text","text":"Available when"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":"."}]},"fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"title":"hashValue","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue"]}],"metadata":{"extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"title":"hashValue","symbolKind":"property","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"roleHeading":"Instance Property","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}]}},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hashValue"},{"text":".","type":"text"}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":" { "},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","abstract":[],"role":"collectionGroup","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","title":"hashValue","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json index 70c687b..8f3e12c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)"]}],"kind":"symbol","metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO8rawValueACSgs5UInt8V_tcfc","symbolKind":"init","modules":[{"name":"TedeeLock"}],"title":"init(rawValue:)","fragments":[{"text":"init","kind":"identifier"},{"text":"?(","kind":"text"},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"roleHeading":"Initializer"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"RawRepresentable.init(rawValue:)"},{"type":"text","text":"."}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"sections":[],"metadata":{"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"role":"symbol","roleHeading":"Initializer","externalID":"s:9TedeeLock0aB15OperationResultO8rawValueACSgs5UInt8V_tcfc","symbolKind":"init","modules":[{"name":"TedeeLock"}],"title":"init(rawValue:)"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.init(rawValue:)"},{"text":".","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":")"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json index 7c8aa83..9b4c396 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidParameter"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Invalid params passed to lock."}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"title":"TedeeLockOperationResult.invalidParameter","externalID":"s:9TedeeLock0aB15OperationResultO16invalidParameteryA2CmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidParameter"}],"roleHeading":"Case","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","abstract":[{"text":"Invalid params passed to lock.","type":"text"}],"title":"TedeeLockOperationResult.invalidParameter","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"abstract":[{"type":"text","text":"Invalid params passed to lock."}],"metadata":{"role":"symbol","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidParameter","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO16invalidParameteryA2CmF","title":"TedeeLockOperationResult.invalidParameter"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"title":"TedeeLockOperationResult.invalidParameter","kind":"symbol","abstract":[{"type":"text","text":"Invalid params passed to lock."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json index 2a9ec12..f6cd589 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission"]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO12noPermissionyA2CmF","symbolKind":"case","role":"symbol","roleHeading":"Case","title":"TedeeLockOperationResult.noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"noPermission","kind":"identifier"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission"},"abstract":[{"text":"No permission to send command to lock","type":"text"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"noPermission"}]}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","title":"TedeeLockOperationResult.noPermission","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"noPermission"}],"type":"topic","abstract":[{"text":"No permission to send command to lock","type":"text"}]}}} \ No newline at end of file +{"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission"},"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"abstract":[{"text":"No permission to send command to lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission"]}],"metadata":{"role":"symbol","symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO12noPermissionyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"title":"TedeeLockOperationResult.noPermission","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","title":"TedeeLockOperationResult.noPermission","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","abstract":[{"type":"text","text":"No permission to send command to lock"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json index cd6aa03..9a09b91 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json @@ -1 +1 @@ -{"kind":"symbol","metadata":{"roleHeading":"Case","title":"TedeeLockOperationResult.notCalibrated","role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO13notCalibratedyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notCalibrated"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"notCalibrated","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated"]}],"abstract":[{"type":"text","text":"Lock does not have calibration. Please calibrate the lock."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"notCalibrated","kind":"identifier"}],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notCalibrated","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"TedeeLockOperationResult.notCalibrated","roleHeading":"Case","externalID":"s:9TedeeLock0aB15OperationResultO13notCalibratedyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notCalibrated","kind":"identifier"}],"role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}]},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationresult","kind":"symbol","title":"TedeeLockOperationResult","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notCalibrated"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json index 6113b23..e2b5173 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured"]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"notConfigured","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO13notConfiguredyA2CmF","title":"TedeeLockOperationResult.notConfigured","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConfigured","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"abstract":[{"text":". Lock auto pull spring feature is turned off.","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","title":"TedeeLockOperationResult.notConfigured","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConfigured"}],"type":"topic","abstract":[{"text":". Lock auto pull spring feature is turned off.","type":"text"}]}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO13notConfiguredyA2CmF","role":"symbol","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConfigured","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationResult.notConfigured","roleHeading":"Case"},"abstract":[{"type":"text","text":". Lock auto pull spring feature is turned off."}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","interfaceLanguage":"swift"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notConfigured"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","abstract":[{"type":"text","text":". Lock auto pull spring feature is turned off."}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"notConfigured"}],"kind":"symbol","title":"TedeeLockOperationResult.notConfigured"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json index 106b02d..ccd625c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue"],"generated":true},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"],"title":"Instance Methods"}],"kind":"article","sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"API Collection","role":"collectionGroup","title":"RawRepresentable Implementations","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"title":"hashValue","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"role":"symbol","title":"hash(into:)","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}],"kind":"symbol","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"title":"RawRepresentable Implementations","role":"collectionGroup","roleHeading":"API Collection"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue"],"generated":true},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"],"title":"Instance Methods","generated":true}],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)","title":"hash(into:)","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","preciseIdentifier":"s:s6HasherV","kind":"typeIdentifier"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","title":"hashValue","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/success.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/success.json index 82d421e..6ab5536 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/success.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/success.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO7successyA2CmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","role":"symbol","title":"TedeeLockOperationResult.success","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"success","kind":"identifier"}]},"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Operation accepted."}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/success"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"abstract":[{"text":"Operation accepted.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Operation accepted."}],"metadata":{"title":"TedeeLockOperationResult.success","role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO7successyA2CmF","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"success"}]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"success","kind":"identifier"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/success"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","kind":"symbol","abstract":[{"type":"text","text":"Operation accepted."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json index 209f562..7de1f9e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByAutounlock","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock"},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlockAlreadyCalledByAutounlock","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO31unlockAlreadyCalledByAutounlockyA2CmF","modules":[{"name":"TedeeLock"}],"role":"symbol"},"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"type":"topic","abstract":[{"text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"metadata":{"title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","modules":[{"name":"TedeeLock"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO31unlockAlreadyCalledByAutounlockyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByAutounlock","kind":"identifier"}],"role":"symbol","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json index a711b19..7cfdf04 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json @@ -1 +1 @@ -{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}],"metadata":{"roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}],"externalID":"s:9TedeeLock0aB15OperationResultO026unlockAlreadyCalledByOtherC0yA2CmF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","symbolKind":"case"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","interfaceLanguage":"swift"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}],"type":"topic","abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation"},"abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation"]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO026unlockAlreadyCalledByOtherC0yA2CmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","abstract":[{"type":"text","text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter)."}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","type":"topic","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate.json index 0908286..717ae08 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"],"title":"Enumerations"}],"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeLockState","kind":"identifier"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"},"kind":"symbol","metadata":{"role":"symbol","title":"TedeeLockState","roleHeading":"Structure","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"navigatorTitle":[{"text":"TedeeLockState","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV","symbolKind":"struct"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","type":"topic","abstract":[{"text":"Actual state","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","kind":"symbol","role":"symbol","title":"state","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"state"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","title":"TedeeLockState","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","title":"stateStatus","abstract":[{"text":"Last lock state change status","type":"text"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"},"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"struct","navigatorTitle":[{"text":"TedeeLockState","kind":"identifier"}],"roleHeading":"Structure","externalID":"s:9TedeeLock0aB5StateV","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"title":"TedeeLockState","role":"symbol"},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","text":"Status","kind":"typeIdentifier"}],"title":"stateStatus","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Last lock state change status","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"abstract":[{"type":"text","text":"Actual state"}],"title":"state","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O","kind":"typeIdentifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json index b7114d9..25ee0a1 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"sections":[],"kind":"symbol","topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking"]},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"],"title":"Default Implementations"}],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo"}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"State","kind":"identifier"}]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"},"metadata":{"externalID":"s:9TedeeLock0aB5StateV0C0O","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Enumeration","title":"TedeeLockState.State","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}],"navigatorTitle":[{"text":"State","kind":"identifier"}],"symbolKind":"enum"},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"partiallyUnlocked","kind":"identifier"}],"kind":"symbol","abstract":[],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","title":"TedeeLockState.State.partiallyUnlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"abstract":[],"type":"topic","title":"TedeeLockState.State.locked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","title":"TedeeLockState.State.unknown","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"title":"TedeeLockState.State.locking","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"locking"}]},"doc://TedeeLock/SH":{"title":"Swift.Hashable","identifier":"doc:\/\/TedeeLock\/SH","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"uncalibrated","kind":"identifier"}],"title":"TedeeLockState.State.uncalibrated","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","kind":"symbol","type":"topic","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"title":"TedeeLockState.State.pullSpring","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"role":"collectionGroup","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","type":"topic","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","title":"TedeeLockState.State.calibration","role":"symbol","kind":"symbol"},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"pulling"}],"title":"TedeeLockState.State.pulling","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","abstract":[],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic","title":"TedeeLockState.State.unlocking","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocking"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","abstract":[],"type":"topic","title":"TedeeLockState.State.unlocked","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlocked","kind":"identifier"}]}}} \ No newline at end of file +{"metadata":{"roleHeading":"Enumeration","externalID":"s:9TedeeLock0aB5StateV0C0O","navigatorTitle":[{"kind":"identifier","text":"State"}],"symbolKind":"enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeLockState.State","role":"symbol"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"State","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"sections":[],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking"],"title":"Enumeration Cases"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"],"generated":true}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","type":"topic","abstract":[],"title":"TedeeLockState.State.unknown"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"title":"TedeeLockState.State.calibration","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","abstract":[],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"kind":"symbol","title":"TedeeLockState.State.unlocking","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlocking","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"partiallyUnlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","type":"topic","abstract":[],"title":"TedeeLockState.State.partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"pullSpring","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","type":"topic","abstract":[],"title":"TedeeLockState.State.pullSpring"},"doc://TedeeLock/SH":{"title":"Swift.Hashable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"kind":"article","type":"topic","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","kind":"symbol","title":"TedeeLockState.State.locked","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"role":"symbol","type":"topic","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","title":"TedeeLockState.State.pulling","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"abstract":[],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","title":"TedeeLockState.State.uncalibrated"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","abstract":[],"title":"TedeeLockState.State.locking"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","title":"TedeeLockState.State.unlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json index faff6ad..4d59e60 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json @@ -1 +1 @@ -{"metadata":{"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV0C0O","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"roleHeading":"Operator","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","title":"!=(_:_:)","extendedModule":"Swift","symbolKind":"op"},"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"platforms":["macOS"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"role":"collectionGroup","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","type":"topic","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","abstract":[],"title":"!=(_:_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"]]},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV0C0O","roleHeading":"Operator","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"extendedModule":"Swift","title":"!=(_:_:)","role":"symbol","symbolKind":"op"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"},"sections":[],"abstract":[{"type":"text","text":"Inherited from "},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"abstract":[],"title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"kind":"article","type":"topic","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json index 3c4463d..707f1ef 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"calibration","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O11calibrationyA2EmF","roleHeading":"Case","symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockState.State.calibration","role":"symbol"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","title":"TedeeLockState.State.calibration","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"calibration","kind":"identifier"}],"languages":["swift"]}]}],"metadata":{"roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"calibration","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O11calibrationyA2EmF","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockState.State.calibration","symbolKind":"case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"title":"TedeeLockState.State.calibration","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","abstract":[],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json index c3ec37a..201de6e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations"]}],"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Equatable Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"],"title":"Operators"}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","abstract":[],"title":"!=(_:_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations"]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"role":"collectionGroup","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"title":"Equatable Implementations"},"topicSections":[{"generated":true,"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations","interfaceLanguage":"swift"},"sections":[],"kind":"article","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"abstract":[],"title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json index a1ae706..b70ebdb 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json @@ -1 +1 @@ -{"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB5StateV0C0O6lockedyA2EmF","title":"TedeeLockState.State.locked","symbolKind":"case","role":"symbol","roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"locked","kind":"identifier"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"locked"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","interfaceLanguage":"swift"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"abstract":[],"type":"topic","title":"TedeeLockState.State.locked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"locked"}],"roleHeading":"Case","symbolKind":"case","title":"TedeeLockState.State.locked","externalID":"s:9TedeeLock0aB5StateV0C0O6lockedyA2EmF","role":"symbol"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"locked","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","kind":"symbol","title":"TedeeLockState.State.locked","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json index ae76d84..68ce161 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"metadata":{"role":"symbol","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O7lockingyA2EmF","title":"TedeeLockState.State.locking"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"locking"}]}],"kind":"declarations"}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking"]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"title":"TedeeLockState.State.locking","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"locking"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"symbolKind":"case","title":"TedeeLockState.State.locking","roleHeading":"Case","externalID":"s:9TedeeLock0aB5StateV0C0O7lockingyA2EmF","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"locking","kind":"identifier"}]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"languages":["swift"]}]}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","abstract":[],"title":"TedeeLockState.State.locking"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json index cbac711..b20974b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"partiallyUnlocked","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","metadata":{"symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"partiallyUnlocked","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O17partiallyUnlockedyA2EmF","roleHeading":"Case","role":"symbol","title":"TedeeLockState.State.partiallyUnlocked"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"partiallyUnlocked","kind":"identifier"}],"kind":"symbol","abstract":[],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","title":"TedeeLockState.State.partiallyUnlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked"]}],"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"partiallyUnlocked","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"partiallyUnlocked","kind":"identifier"}],"symbolKind":"case","role":"symbol","externalID":"s:9TedeeLock0aB5StateV0C0O17partiallyUnlockedyA2EmF","roleHeading":"Case","title":"TedeeLockState.State.partiallyUnlocked","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"partiallyUnlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","type":"topic","abstract":[],"title":"TedeeLockState.State.partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json index 52c107e..f3fdd3e 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","interfaceLanguage":"swift"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"role":"symbol","title":"TedeeLockState.State.pulling","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB5StateV0C0O7pullingyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"pulling"}],"title":"TedeeLockState.State.pulling","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","abstract":[],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"pulling"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"symbol","metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pulling","kind":"identifier"}],"title":"TedeeLockState.State.pulling","externalID":"s:9TedeeLock0aB5StateV0C0O7pullingyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","roleHeading":"Case","role":"symbol"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"role":"symbol","type":"topic","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","title":"TedeeLockState.State.pulling","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json index 6b72ac6..2d5489b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV0C0O10pullSpringyA2EmF","title":"TedeeLockState.State.pullSpring","role":"symbol","roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pullSpring","kind":"identifier"}],"platforms":["macOS"]}]}],"sections":[],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","title":"TedeeLockState","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"title":"TedeeLockState.State.pullSpring","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"role":"symbol","title":"TedeeLockState.State.pullSpring","externalID":"s:9TedeeLock0aB5StateV0C0O10pullSpringyA2EmF","symbolKind":"case","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","interfaceLanguage":"swift"},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"pullSpring","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","type":"topic","abstract":[],"title":"TedeeLockState.State.pullSpring"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json index 8013aaf..482e413 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json @@ -1 +1 @@ -{"kind":"symbol","metadata":{"symbolKind":"case","title":"TedeeLockState.State.uncalibrated","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB5StateV0C0O12uncalibratedyA2EmF"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"uncalibrated","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"uncalibrated","kind":"identifier"}],"title":"TedeeLockState.State.uncalibrated","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","kind":"symbol","type":"topic","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"}}} \ No newline at end of file +{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"platforms":["macOS"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"externalID":"s:9TedeeLock0aB5StateV0C0O12uncalibratedyA2EmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"role":"symbol","roleHeading":"Case","title":"TedeeLockState.State.uncalibrated"},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"abstract":[],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","title":"TedeeLockState.State.uncalibrated"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json index 4336c82..9335010 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unknown","kind":"identifier"}]}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV0C0O7unknownyA2EmF","title":"TedeeLockState.State.unknown","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unknown","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"sections":[],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","title":"TedeeLockState.State.unknown","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0aB5StateV0C0O7unknownyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unknown","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","title":"TedeeLockState.State.unknown"},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unknown","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","type":"topic","abstract":[],"title":"TedeeLockState.State.unknown"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json index 5a8c08f..73fe940 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked"]}],"sections":[],"kind":"symbol","metadata":{"roleHeading":"Case","symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV0C0O8unlockedyA2EmF","title":"TedeeLockState.State.unlocked","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlocked","kind":"identifier"}]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocked","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","abstract":[],"type":"topic","title":"TedeeLockState.State.unlocked","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlocked","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked"},"sections":[],"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocked","kind":"identifier"}],"title":"TedeeLockState.State.unlocked","role":"symbol","symbolKind":"case","roleHeading":"Case","externalID":"s:9TedeeLock0aB5StateV0C0O8unlockedyA2EmF","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocked","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","title":"TedeeLockState.State.unlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","role":"symbol","kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json index 5979a3f..709ed04 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","title":"TedeeLockState.State.unlocking","externalID":"s:9TedeeLock0aB5StateV0C0O9unlockingyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlocking"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlocking"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic","title":"TedeeLockState.State.unlocking","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocking"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlocking","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","interfaceLanguage":"swift"},"metadata":{"title":"TedeeLockState.State.unlocking","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocking","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O9unlockingyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","roleHeading":"Case","role":"symbol"},"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"kind":"symbol","title":"TedeeLockState.State.unlocking","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlocking","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.property.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.property.json index b410c9c..b4504b9 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.property.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/state-swift.property.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"metadata":{"symbolKind":"property","title":"state","externalID":"s:9TedeeLock0aB5StateV5stateAC0C0Ovp","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"state","kind":"identifier"},{"text":": ","kind":"text"},{"text":"State","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property"},"sections":[],"abstract":[{"type":"text","text":"Actual state"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","type":"topic","abstract":[{"text":"Actual state","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","kind":"symbol","role":"symbol","title":"state","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"state"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","interfaceLanguage":"swift"},"metadata":{"symbolKind":"property","title":"state","roleHeading":"Instance Property","externalID":"s:9TedeeLock0aB5StateV5stateAC0C0Ovp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"kind":"text","text":": "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Actual state"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"abstract":[{"type":"text","text":"Actual state"}],"title":"state","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O","kind":"typeIdentifier","text":"State"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/statestatus.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/statestatus.json index e25387b..a496757 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/statestatus.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/statestatus.json @@ -1 +1 @@ -{"abstract":[{"text":"Last lock state change status","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"stateStatus","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO"}]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/statestatus"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"stateStatus"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","text":"Status","kind":"typeIdentifier"}],"title":"stateStatus","externalID":"s:9TedeeLock0aB5StateV11stateStatusAC0E0Ovp"},"schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","title":"stateStatus","abstract":[{"text":"Last lock state change status","type":"text"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]}}} \ No newline at end of file +{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"abstract":[{"text":"Last lock state change status","type":"text"}],"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/statestatus"]}],"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0aB5StateV11stateStatusAC0E0Ovp","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","kind":"typeIdentifier"}],"title":"stateStatus"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"stateStatus"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","text":"Status","kind":"typeIdentifier"}],"title":"stateStatus","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Last lock state change status","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status.json index ee9e04b..714de3a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status.json @@ -1 +1 @@ -{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"platforms":["macOS"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeLockState.Status","role":"symbol","modules":[{"name":"TedeeLock"}],"navigatorTitle":[{"kind":"identifier","text":"Status"}],"externalID":"s:9TedeeLock0aB5StateV6StatusO","symbolKind":"enum"},"kind":"symbol","topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"]},{"generated":true,"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"]}],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo","title":"Conforms To"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"ok"}],"abstract":[],"title":"TedeeLockState.Status.ok","kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","title":"TedeeLockState","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"jammed"}],"abstract":[]},"doc://TedeeLock/SH":{"identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article","type":"topic","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","role":"collectionGroup"},"doc://TedeeLock/SQ":{"identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"symbolKind":"enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB5StateV6StatusO","roleHeading":"Enumeration","navigatorTitle":[{"text":"Status","kind":"identifier"}],"title":"TedeeLockState.Status"},"relationshipsSections":[{"title":"Conforms To","kind":"relationships","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status"]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"],"title":"Enumeration Cases"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"],"generated":true}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"type":"topic","abstract":[],"title":"Equatable Implementations","role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","abstract":[],"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"jammed","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/SQ":{"identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable","type":"unresolvable"},"doc://TedeeLock/SH":{"identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"title":"TedeeLockState.Status.ok","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ok","kind":"identifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json index 8af447e..496dd07 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)"},"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV6StatusO","role":"symbol","roleHeading":"Operator","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"extendedModule":"Swift","symbolKind":"op"},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"title":"!=(_:_:)","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","role":"symbol","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article","type":"topic","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","role":"collectionGroup"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"title":"!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"roleHeading":"Operator","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV6StatusO","symbolKind":"op","extendedModule":"Swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"type":"topic","abstract":[],"title":"!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"type":"topic","abstract":[],"title":"Equatable Implementations","role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json index 690a4f3..2c82e75 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)"],"generated":true}],"sections":[],"metadata":{"title":"Equatable Implementations","role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","interfaceLanguage":"swift"},"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"title":"!=(_:_:)","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","role":"symbol","type":"topic","kind":"symbol"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)"],"generated":true}],"metadata":{"title":"Equatable Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","role":"collectionGroup"},"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"type":"topic","abstract":[],"title":"!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/jammed.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/jammed.json index 93ff271..fbd6081 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/jammed.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/jammed.json @@ -1 +1 @@ -{"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/jammed"]}],"kind":"symbol","metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"jammed","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockState.Status.jammed","externalID":"s:9TedeeLock0aB5StateV6StatusO6jammedyA2EmF"},"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"jammed"}],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"jammed"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"sections":[],"metadata":{"externalID":"s:9TedeeLock0aB5StateV6StatusO6jammedyA2EmF","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"jammed","kind":"identifier"}],"title":"TedeeLockState.Status.jammed","modules":[{"name":"TedeeLock"}],"role":"symbol"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"jammed"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/jammed"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","abstract":[],"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"jammed","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/ok.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/ok.json index 44c3148..403870f 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/ok.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeelockstate/status/ok.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/ok"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","metadata":{"symbolKind":"case","title":"TedeeLockState.Status.ok","externalID":"s:9TedeeLock0aB5StateV6StatusO2okyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ok","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"ok","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"ok"}],"abstract":[],"title":"TedeeLockState.Status.ok","kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"ok","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/ok"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"ok"}],"title":"TedeeLockState.Status.ok","roleHeading":"Case","symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV6StatusO2okyA2EmF","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"title":"TedeeLockState.Status.ok","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ok","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification.json index fd2a37e..9ecc47b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}],"languages":["swift"]}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"title":"TedeeNotification","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeNotification"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","roleHeading":"Structure","externalID":"s:9TedeeLock0A12NotificationV","symbolKind":"struct"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification"]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"title":"serialNumber","url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","abstract":[{"type":"text","text":"Serial number of the lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification"}],"abstract":[{"type":"text","text":"Notification send by the lock"}],"title":"notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"],"title":"Enumerations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeNotification","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"metadata":{"externalID":"s:9TedeeLock0A12NotificationV","modules":[{"name":"TedeeLock"}],"title":"TedeeNotification","symbolKind":"struct","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeNotification"}],"navigatorTitle":[{"text":"TedeeNotification","kind":"identifier"}],"role":"symbol","roleHeading":"Structure"},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"title":"notification","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification","kind":"typeIdentifier"}],"abstract":[{"text":"Notification send by the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"abstract":[{"text":"Serial number of the lock","type":"text"}],"url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","title":"serialNumber","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json index fafcc4d..9a0ec91 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json @@ -1 +1 @@ -{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)"],"title":"Enumeration Cases"}],"metadata":{"navigatorTitle":[{"text":"Notification","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A12NotificationV0C0O","title":"TedeeNotification.Notification","symbolKind":"enum","roleHeading":"Enumeration","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Notification","kind":"identifier"}],"role":"symbol"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}],"title":"TedeeNotification.Notification.generic(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"lockState"},{"kind":"text","text":"("},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"TedeeNotification.Notification.lockState(_:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Enumeration","externalID":"s:9TedeeLock0A12NotificationV0C0O","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"title":"TedeeNotification.Notification","role":"symbol","symbolKind":"enum","navigatorTitle":[{"text":"Notification","kind":"identifier"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"sections":[],"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Notification"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","type":"topic","title":"TedeeNotification.Notification.generic(_:)","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"text":"([","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"])"}],"url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"lockState","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"},{"kind":"text","text":")"}],"title":"TedeeNotification.Notification.lockState(_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json index 52416f4..3f5f7b9 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"text":"([","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}]}],"kind":"declarations"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"metadata":{"title":"TedeeNotification.Notification.generic(_:)","externalID":"s:9TedeeLock0A12NotificationV0C0O7genericyAESays5UInt8VGcAEmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"text":"([","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"])","kind":"text"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}],"title":"TedeeNotification.Notification.generic(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"metadata":{"title":"TedeeNotification.Notification.generic(_:)","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}],"externalID":"s:9TedeeLock0A12NotificationV0C0O7genericyAESays5UInt8VGcAEmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","role":"symbol","symbolKind":"case"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"])"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","type":"topic","title":"TedeeNotification.Notification.generic(_:)","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"text":"([","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"])"}],"url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json index b5c3bbd..00f579d 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json @@ -1 +1 @@ -{"metadata":{"title":"TedeeNotification.Notification.lockState(_:)","externalID":"s:9TedeeLock0A12NotificationV0C0O9lockStateyAeA0abE0VcAEmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"lockState","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"lockState","kind":"identifier"},{"kind":"text","text":"("},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"lockState"},{"kind":"text","text":"("},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"TedeeNotification.Notification.lockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","interfaceLanguage":"swift"},"metadata":{"externalID":"s:9TedeeLock0A12NotificationV0C0O9lockStateyAeA0abE0VcAEmF","title":"TedeeNotification.Notification.lockState(_:)","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"lockState"},{"kind":"text","text":"("},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"kind":"text","text":")"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"lockState","kind":"identifier"},{"text":"(","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState"},{"text":")","kind":"text"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"lockState","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"},{"kind":"text","text":")"}],"title":"TedeeNotification.Notification.lockState(_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.property.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.property.json index 5680bad..4ca4bb6 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.property.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/notification-swift.property.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"notification","externalID":"s:9TedeeLock0A12NotificationV12notificationAC0C0Ovp","role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","kind":"typeIdentifier","text":"Notification"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"notification","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","text":"Notification","kind":"typeIdentifier"}]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property"},"sections":[],"abstract":[{"text":"Notification send by the lock","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification"}],"abstract":[{"type":"text","text":"Notification send by the lock"}],"title":"notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"text":"Notification send by the lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"kind":"symbol","metadata":{"symbolKind":"property","title":"notification","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","kind":"typeIdentifier","text":"Notification"}],"role":"symbol","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A12NotificationV12notificationAC0C0Ovp"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"title":"notification","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification","kind":"typeIdentifier"}],"abstract":[{"text":"Notification send by the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/serialnumber.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/serialnumber.json index 8f5b4f2..3520a13 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/serialnumber.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeenotification/serialnumber.json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Serial number of the lock"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","interfaceLanguage":"swift"},"metadata":{"title":"serialNumber","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"externalID":"s:9TedeeLock0A12NotificationV12serialNumberAA0a6SerialE0Vvp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"role":"symbol"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"}]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"title":"serialNumber","url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","abstract":[{"type":"text","text":"Serial number of the lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Serial number of the lock"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"roleHeading":"Instance Property","title":"serialNumber","role":"symbol","externalID":"s:9TedeeLock0A12NotificationV12serialNumberAA0a6SerialE0Vvp","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"}],"symbolKind":"property"},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"}],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"abstract":[{"text":"Serial number of the lock","type":"text"}],"url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","title":"serialNumber","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"type":"topic","role":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock.json index 08c8758..9e0f155 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock"]}],"kind":"symbol","metadata":{"symbolKind":"struct","title":"TedeeRegisterLock","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"roleHeading":"Structure","externalID":"s:9TedeeLock0a8RegisterB0V","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeRegisterLock"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","interfaceLanguage":"swift"},"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)"],"title":"Initializers"},{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","type":"topic","title":"id","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"title":"authPublicKey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"authPublicKey"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"role":"symbol","title":"revision","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"title":"targetDeviceRevision","role":"symbol","abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","type":"topic","url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"role":"symbol","kind":"symbol","type":"topic","title":"init(revision:targetDeviceRevision:id:authPublicKey:)","url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"text":"id","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"authPublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":")","kind":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision"],"title":"Instance Properties"}],"metadata":{"title":"TedeeRegisterLock","symbolKind":"struct","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"externalID":"s:9TedeeLock0a8RegisterB0V","modules":[{"name":"TedeeLock"}],"roleHeading":"Structure"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"type":"topic","abstract":[],"title":"id","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"type":"topic","abstract":[],"title":"init(revision:targetDeviceRevision:id:authPublicKey:)","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"type":"topic","abstract":[],"title":"revision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"type":"topic","abstract":[],"title":"targetDeviceRevision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"targetDeviceRevision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"type":"topic","abstract":[],"title":"authPublicKey","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"authPublicKey","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json index 21d0d1c..b6520a4 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey"]}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"authPublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","interfaceLanguage":"swift"},"sections":[],"metadata":{"roleHeading":"Instance Property","symbolKind":"property","title":"authPublicKey","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"externalID":"s:9TedeeLock0a8RegisterB0V13authPublicKeySSvp","modules":[{"name":"TedeeLock"}]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"title":"authPublicKey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"authPublicKey"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"authPublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey"]}],"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"title":"authPublicKey","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"authPublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","externalID":"s:9TedeeLock0a8RegisterB0V13authPublicKeySSvp"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"type":"topic","abstract":[],"title":"authPublicKey","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"authPublicKey","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/id.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/id.json index 4b4477e..d11f61b 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/id.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/id.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/id"]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"externalID":"s:9TedeeLock0a8RegisterB0V2idSivp","role":"symbol","symbolKind":"property","title":"id","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"id","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"id","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","type":"topic","title":"id","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/id"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"languages":["swift"]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"externalID":"s:9TedeeLock0a8RegisterB0V2idSivp","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"id"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"id","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"type":"topic","abstract":[],"title":"id","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json index 7deb8d9..ff2885f 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0a8RegisterB0V8revision20targetDeviceRevision2id13authPublicKeyACSi_S2iSStcfc","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"init(revision:targetDeviceRevision:id:authPublicKey:)","symbolKind":"init","roleHeading":"Initializer","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"revision","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"targetDeviceRevision","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":")","kind":"text"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"kind":"text","text":", "},{"text":"targetDeviceRevision","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"id","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":")"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"role":"symbol","kind":"symbol","type":"topic","title":"init(revision:targetDeviceRevision:id:authPublicKey:)","url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"text":"id","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"authPublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":")","kind":"text"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"kind":"symbol","metadata":{"role":"symbol","symbolKind":"init","externalID":"s:9TedeeLock0a8RegisterB0V8revision20targetDeviceRevision2id13authPublicKeyACSi_S2iSStcfc","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"revision"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"text":"id","kind":"externalParam"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"init(revision:targetDeviceRevision:id:authPublicKey:)","roleHeading":"Initializer","modules":[{"name":"TedeeLock"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"revision"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"id","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"text":"authPublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":")","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"type":"topic","abstract":[],"title":"init(revision:targetDeviceRevision:id:authPublicKey:)","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/revision.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/revision.json index d1db460..f8913b3 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/revision.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/revision.json @@ -1 +1 @@ -{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/revision"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"symbolKind":"property","externalID":"s:9TedeeLock0a8RegisterB0V8revisionSivp","title":"revision","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"role":"symbol","title":"revision","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/revision"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0a8RegisterB0V8revisionSivp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"title":"revision","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"type":"topic","abstract":[],"title":"revision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json index f0aa89b..cb26a2d 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json @@ -1 +1 @@ -{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"title":"targetDeviceRevision","modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0a8RegisterB0V20targetDeviceRevisionSivp"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"title":"targetDeviceRevision","role":"symbol","abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","type":"topic","url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"metadata":{"role":"symbol","externalID":"s:9TedeeLock0a8RegisterB0V20targetDeviceRevisionSivp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"title":"targetDeviceRevision","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"type":"topic","abstract":[],"title":"targetDeviceRevision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"targetDeviceRevision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber.json index ea2363d..2dfcdb5 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber.json @@ -1 +1 @@ -{"metadata":{"title":"TedeeSerialNumber","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSerialNumber","kind":"identifier"}],"roleHeading":"Structure","navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"externalID":"s:9TedeeLock0A12SerialNumberV","symbolKind":"struct"},"relationshipsSections":[{"title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","kind":"relationships"}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)"],"title":"Initializers"},{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"],"title":"Enumerations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"title":"init(serialNumber:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/s8SendableP":{"identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber"]}],"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},"metadata":{"symbolKind":"struct","modules":[{"name":"TedeeLock"}],"title":"TedeeSerialNumber","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeSerialNumber","kind":"identifier"}],"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"externalID":"s:9TedeeLock0A12SerialNumberV","roleHeading":"Structure"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeSerialNumber","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"role":"symbol","abstract":[{"type":"text","text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type"}],"title":"init(serialNumber:)","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"text":"(","kind":"text"},{"text":"serialNumber","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}]},"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"role":"symbol","abstract":[],"title":"serialNumber","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors.json index 385fcfc..822df77 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","interfaceLanguage":"swift"},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"],"generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"metadata":{"roleHeading":"Enumeration","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"title":"TedeeSerialNumber.Errors","role":"symbol","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO","extendedModule":"TedeeLock","symbolKind":"enum"},"references":{"doc://TedeeLock/s5ErrorP":{"title":"Swift.Error","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"abstract":[],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"title":"TedeeSerialNumber.Errors.invalidFormat"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidDeviceType","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"kind":"article","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","title":"Error Implementations","abstract":[],"role":"collectionGroup","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"enum","role":"symbol","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO","roleHeading":"Enumeration","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"extendedModule":"TedeeLock","title":"TedeeSerialNumber.Errors"},"kind":"symbol","sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"],"title":"Enumeration Cases"},{"generated":true,"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"]}],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"role":"symbol","title":"TedeeSerialNumber.Errors.invalidFormat","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","kind":"symbol","abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDeviceType"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","abstract":[],"kind":"article","type":"topic"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/s5ErrorP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s5ErrorP","title":"Swift.Error"},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","url":"\/documentation\/tedeelock\/tedeeserialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"abstract":[{"type":"text","text":"Used for identification of the lock."}],"type":"topic","navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json index babfdcb..5d6ddfe 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"roleHeading":"Operator","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","symbolKind":"op","extendedModule":"Swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"languages":["swift"]}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"]]},"kind":"symbol","metadata":{"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","role":"symbol","extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"roleHeading":"Operator","symbolKind":"op","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json index ed5a7e9..38a6a2c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","interfaceLanguage":"swift"},"topicSections":[{"title":"Operators","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)"]}],"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Equatable Implementations"},"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"},"sections":[],"metadata":{"title":"Equatable Implementations","role":"collectionGroup","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)"],"generated":true}],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json index ad88ee9..533f28a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json @@ -1 +1 @@ -{"sections":[],"kind":"article","variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"title":"Error Implementations","roleHeading":"API Collection"},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","type":"topic","title":"localizedDescription","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol"}}} \ No newline at end of file +{"kind":"article","sections":[],"metadata":{"role":"collectionGroup","title":"Error Implementations","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription"],"generated":true,"title":"Instance Properties"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"kind":"symbol","type":"topic","title":"localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json index fd9e26e..b900238 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json @@ -1 +1 @@ -{"sections":[],"metadata":{"roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidDeviceType","kind":"identifier"}],"role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO17invalidDeviceTypeyA2EmF","modules":[{"name":"TedeeLock"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidDeviceType","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidDeviceType","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidDeviceType","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"title":"TedeeSerialNumber.Errors.invalidDeviceType","symbolKind":"case","modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDeviceType","kind":"identifier"}],"externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO17invalidDeviceTypeyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","kind":"symbol","abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDeviceType"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json index 7ade25b..7d7ea8f 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json @@ -1 +1 @@ -{"sections":[],"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO13invalidFormatyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidFormat","kind":"identifier"}],"title":"TedeeSerialNumber.Errors.invalidFormat"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidFormat","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat","interfaceLanguage":"swift"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"abstract":[],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"title":"TedeeSerialNumber.Errors.invalidFormat"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidFormat","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidFormat"}],"roleHeading":"Case","symbolKind":"case","title":"TedeeSerialNumber.Errors.invalidFormat","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO13invalidFormatyA2EmF"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"role":"symbol","title":"TedeeSerialNumber.Errors.invalidFormat","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json index 28c78b8..31bf456 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json @@ -1 +1 @@ -{"metadata":{"roleHeading":"Instance Property","symbolKind":"property","platforms":[{"introducedAt":"8.0","unavailable":false,"beta":false,"deprecated":false,"name":"iOS"},{"beta":false,"deprecated":false,"unavailable":false,"name":"macOS","introducedAt":"10.10"},{"introducedAt":"9.0","name":"tvOS","deprecated":false,"beta":false,"unavailable":false},{"beta":false,"introducedAt":"2.0","name":"watchOS","unavailable":false,"deprecated":false}],"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"extendedModule":"Swift","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","title":"localizedDescription","role":"symbol"},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Error.localizedDescription"},{"type":"text","text":"."}],"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription"]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","interfaceLanguage":"swift"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":" { ","kind":"text"},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","type":"topic","title":"localizedDescription","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"kind":"article","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","title":"Error Implementations","abstract":[],"role":"collectionGroup","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription"},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Error.localizedDescription","type":"codeVoice"},{"text":".","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"platforms":[{"name":"iOS","beta":false,"introducedAt":"8.0","unavailable":false,"deprecated":false},{"unavailable":false,"deprecated":false,"introducedAt":"10.10","beta":false,"name":"macOS"},{"introducedAt":"9.0","name":"tvOS","deprecated":false,"unavailable":false,"beta":false},{"deprecated":false,"unavailable":false,"introducedAt":"2.0","name":"watchOS","beta":false}],"symbolKind":"property","role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"title":"localizedDescription","extendedModule":"Swift","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"localizedDescription"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"kind":"symbol","type":"topic","title":"localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","abstract":[],"kind":"article","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json index 3edcadd..b4a5560 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json @@ -1 +1 @@ -{"sections":[],"metadata":{"fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"init","roleHeading":"Initializer","role":"symbol","externalID":"s:9TedeeLock0A12SerialNumberV06serialD0ACSS_tKcfc","title":"init(serialNumber:)"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"serialNumber","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}]}],"kind":"declarations"},{"kind":"content","content":[{"type":"heading","text":"Discussion","level":2,"anchor":"discussion"},{"type":"aside","name":"Throws","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeSerialNumber.Errors.invalidFormat, TedeeSerialNumber.Errors.invalidDeviceType","type":"text"}]}],"style":"note"}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"title":"init(serialNumber:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"role":"symbol","symbolKind":"init","externalID":"s:9TedeeLock0A12SerialNumberV06serialD0ACSS_tKcfc","title":"init(serialNumber:)","fragments":[{"kind":"identifier","text":"init"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"serialNumber"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Initializer"},"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"serialNumber"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}],"languages":["swift"]}]},{"kind":"content","content":[{"level":2,"anchor":"discussion","text":"Discussion","type":"heading"},{"name":"Throws","content":[{"inlineContent":[{"text":"TedeeSerialNumber.Errors.invalidFormat, TedeeSerialNumber.Errors.invalidDeviceType","type":"text"}],"type":"paragraph"}],"type":"aside","style":"note"}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"role":"symbol","abstract":[{"type":"text","text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type"}],"title":"init(serialNumber:)","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"text":"(","kind":"text"},{"text":"serialNumber","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json index 78c4231..a63399a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","interfaceLanguage":"swift"},"metadata":{"externalID":"s:9TedeeLock0A12SerialNumberV06serialD0SSvp","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"title":"serialNumber"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","interfaceLanguage":"swift"},"sections":[],"metadata":{"symbolKind":"property","roleHeading":"Instance Property","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"title":"serialNumber","externalID":"s:9TedeeLock0A12SerialNumberV06serialD0SSvp"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"languages":["swift"],"platforms":["macOS"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"role":"symbol","abstract":[],"title":"serialNumber","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime.json index 291a8fe..bf21dcc 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature"],"title":"Instance Properties"}],"relationshipsSections":[{"type":"conformsTo","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"kind":"relationships"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","interfaceLanguage":"swift"},"metadata":{"navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"roleHeading":"Structure","role":"symbol","symbolKind":"struct","externalID":"s:9TedeeLock0A14SignedDateTimeV","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeSignedDateTime"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"datetime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"init(datetime:signature:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"signature"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","interfaceLanguage":"swift"},"sections":[],"relationshipsSections":[{"type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"title":"Conforms To","kind":"relationships"}],"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature"],"title":"Instance Properties"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"role":"symbol","symbolKind":"struct","externalID":"s:9TedeeLock0A14SignedDateTimeV","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTime"}],"navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","roleHeading":"Structure","modules":[{"name":"TedeeLock"}]},"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","title":"datetime","kind":"symbol"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","title":"signature","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","title":"init(datetime:signature:)","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/datetime.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/datetime.json index 4dc298a..638397a 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/datetime.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/datetime.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/datetime"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"metadata":{"externalID":"s:9TedeeLock0A14SignedDateTimeV8datetimeSSvp","roleHeading":"Instance Property","title":"datetime","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"datetime"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"symbolKind":"property","modules":[{"name":"TedeeLock"}],"role":"symbol"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","interfaceLanguage":"swift"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"platforms":["macOS"]}]}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"datetime"}}} \ No newline at end of file +{"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/datetime"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime"},"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"externalID":"s:9TedeeLock0A14SignedDateTimeV8datetimeSSvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"datetime"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}],"title":"datetime","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","title":"datetime","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json index 147160e..df86907 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"init","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"datetime"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"externalID":"s:9TedeeLock0A14SignedDateTimeV8datetime9signatureACSS_SStcfc","roleHeading":"Initializer","title":"init(datetime:signature:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"signature"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"init(datetime:signature:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","interfaceLanguage":"swift"},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"kind":"externalParam","text":"signature"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":")"}],"roleHeading":"Initializer","symbolKind":"init","externalID":"s:9TedeeLock0A14SignedDateTimeV8datetime9signatureACSS_SStcfc","title":"init(datetime:signature:)","role":"symbol"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"datetime"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","title":"init(datetime:signature:)","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/signature.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/signature.json index 99ad4c1..2c7c2e6 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/signature.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetime/signature.json @@ -1 +1 @@ -{"kind":"symbol","sections":[],"metadata":{"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14SignedDateTimeV9signatureSSvp","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"signature","role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/signature"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"signature"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"roleHeading":"Instance Property","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"title":"signature","role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14SignedDateTimeV9signatureSSvp"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/signature"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","title":"signature","kind":"symbol"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider.json index e2bce77..14c50f5 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider.json @@ -1 +1 @@ -{"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"type":"inheritsFrom","title":"Inherits From","kind":"relationships"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"},{"kind":"text","text":" : "},{"kind":"typeIdentifier","text":"Sendable","preciseIdentifier":"s:s8SendableP"}],"platforms":["macOS"]}]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)"],"title":"Instance Methods"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider"]}],"metadata":{"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Protocol","symbolKind":"protocol","role":"symbol","title":"TedeeSignedDateTimeProvider","externalID":"s:9TedeeLock0A22SignedDateTimeProviderP","navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}]},"abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"title":"dateTime(for:)","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","required":true,"kind":"symbol","abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"kind":"externalParam","text":"for"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","type":"topic"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"relationshipsSections":[{"title":"Inherits From","kind":"relationships","type":"inheritsFrom","identifiers":["doc:\/\/TedeeLock\/s8SendableP"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"protocol","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"},{"text":" : ","kind":"text"},{"text":"Sendable","kind":"typeIdentifier","preciseIdentifier":"s:s8SendableP"}]}],"kind":"declarations"}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider"]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)"],"title":"Instance Methods"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","interfaceLanguage":"swift"},"metadata":{"title":"TedeeSignedDateTimeProvider","externalID":"s:9TedeeLock0A22SignedDateTimeProviderP","symbolKind":"protocol","role":"symbol","roleHeading":"Protocol","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}]},"references":{"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","title":"dateTime(for:)","abstract":[{"text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it.","type":"text"}],"type":"topic","kind":"symbol","role":"symbol","required":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"text":"for","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSignedDateTime","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json index f793617..cb28690 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"metadata":{"required":true,"externalID":"s:9TedeeLock0A22SignedDateTimeProviderP04dateE03forAA0acdE0VAA0A12SerialNumberV_tYaKF","modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"method","roleHeading":"Instance Method","title":"dateTime(for:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"text":"for","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV","text":"TedeeSignedDateTime","kind":"typeIdentifier"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"dateTime","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"for"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeSignedDateTime","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"content","content":[{"type":"heading","level":2,"text":"Discussion","anchor":"discussion"},{"inlineContent":[{"type":"text","text":"Caching signed date time can result in unexpected behaviour and invalid time of activity logs created by the lock"}],"type":"paragraph"}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"title":"dateTime(for:)","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","required":true,"kind":"symbol","abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"kind":"externalParam","text":"for"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"dateTime","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"for"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV","text":"TedeeSignedDateTime","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"}],"platforms":["macOS"]}]},{"content":[{"level":2,"text":"Discussion","type":"heading","anchor":"discussion"},{"inlineContent":[{"type":"text","text":"Caching signed date time can result in unexpected behaviour and invalid time of activity logs created by the lock"}],"type":"paragraph"}],"kind":"content"}],"abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"metadata":{"required":true,"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"dateTime","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"for"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"externalID":"s:9TedeeLock0A22SignedDateTimeProviderP04dateE03forAA0acdE0VAA0A12SerialNumberV_tYaKF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"dateTime(for:)","roleHeading":"Instance Method","symbolKind":"method"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]]},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","title":"dateTime(for:)","abstract":[{"text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it.","type":"text"}],"type":"topic","kind":"symbol","role":"symbol","required":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"text":"for","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSignedDateTime","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion.json index 9f06d1e..d3c674c 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"]}],"metadata":{"roleHeading":"Structure","role":"symbol","title":"TedeeSoftwareVersion","symbolKind":"struct","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"externalID":"s:9TedeeLock0A15SoftwareVersionV","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"modules":[{"name":"TedeeLock"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","interfaceLanguage":"swift"},"relationshipsSections":[{"kind":"relationships","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/SE"],"type":"conformsTo"}],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"title":"softwareType","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/SE":{"identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"kind":"symbol","title":"version","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"version"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version","abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A15SoftwareVersionV","roleHeading":"Structure","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"title":"TedeeSoftwareVersion","role":"symbol","symbolKind":"struct","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","interfaceLanguage":"swift"},"sections":[],"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeesoftwareversion"],"traits":[{"interfaceLanguage":"swift"}]}],"relationshipsSections":[{"type":"conformsTo","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SE"],"title":"Conforms To"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"version"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","kind":"symbol","type":"topic","title":"version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version"},"doc://TedeeLock/SE":{"identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","title":"softwareType","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"softwareType"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json index 6c059b5..43bbb96 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype"]}],"sections":[],"metadata":{"symbolKind":"property","externalID":"s:9TedeeLock0A15SoftwareVersionV12softwareTypeSivp","title":"softwareType","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"title":"softwareType","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","metadata":{"role":"symbol","symbolKind":"property","roleHeading":"Instance Property","title":"softwareType","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A15SoftwareVersionV12softwareTypeSivp"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","title":"softwareType","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"softwareType"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/version.json b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/version.json index 6ee34e9..8cce00d 100644 --- a/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/version.json +++ b/TedeeLock.doccarchive/data/documentation/tedeelock/tedeesoftwareversion/version.json @@ -1 +1 @@ -{"metadata":{"role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0A15SoftwareVersionV7versionSSvp","roleHeading":"Instance Property","title":"version","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"version","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"version","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/version"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"kind":"symbol","title":"version","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"version"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version","abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"},"metadata":{"symbolKind":"property","externalID":"s:9TedeeLock0A15SoftwareVersionV7versionSSvp","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"version","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","title":"version","modules":[{"name":"TedeeLock"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/version"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"version","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"version"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","kind":"symbol","type":"topic","title":"version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/how-to-add-lock.json b/TedeeLock.doccarchive/data/tutorials/how-to-add-lock.json index a546cc2..8f01592 100644 --- a/TedeeLock.doccarchive/data/tutorials/how-to-add-lock.json +++ b/TedeeLock.doccarchive/data/tutorials/how-to-add-lock.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"role":"overview","categoryPathComponent":"how-to-add-lock","estimatedTime":"40min","category":"How to add Lock","title":"How to add Lock"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/how-to-add-lock"]}],"kind":"overview","sections":[{"action":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","overridingTitle":"Get started","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"type":"reference"},"image":"logo_tedee.png","backgroundImage":"logo_tedee.png","content":[{"type":"paragraph","inlineContent":[{"text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it.","type":"text"}]}],"kind":"hero","title":"How to add Lock"},{"kind":"volume","content":[],"name":null,"image":null,"chapters":[{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"],"name":"Before You start","image":"logo_tedee.png","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"In this chapter will go through all set up things that will be required in this tutorial"}]}]},{"content":[{"inlineContent":[{"type":"text","text":"In this chapter we will make unsecured connection to the lock and we will get all the data required to add this lock to Tedee account"}],"type":"paragraph"}],"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"],"name":"Connect and get lock data","image":"logo_tedee.png"},{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"],"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"In this chapter we will add the lock to Tedee account and we will register it"}]}],"image":"logo_tedee.png","name":"Add lock to Tedee account"},{"name":"Secured connection with lock","image":"logo_tedee.png","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"],"content":[{"inlineContent":[{"type":"text","text":"In this chapter we will make secured connection to the lock"}],"type":"paragraph"}]},{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"],"image":"logo_tedee.png","name":"Summary","content":[{"type":"paragraph","inlineContent":[{"text":"In this chapter we will combine all the things that we set up and prepared in previous chapters.","type":"text"}]}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","interfaceLanguage":"swift"},"hierarchy":{"paths":[],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","url":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"type":"link"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"logo_tedee.png":{"alt":"Tedee","identifier":"logo_tedee.png","type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/logo_tedee.png"}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"}}} \ No newline at end of file +{"metadata":{"role":"overview","title":"How to add Lock","category":"How to add Lock","estimatedTime":"40min","categoryPathComponent":"how-to-add-lock"},"kind":"overview","hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/how-to-add-lock"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[{"kind":"hero","action":{"type":"reference","overridingTitle":"Get started","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","isActive":true},"content":[{"type":"paragraph","inlineContent":[{"text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it.","type":"text"}]}],"backgroundImage":"logo_tedee.png","title":"How to add Lock","image":"logo_tedee.png"},{"kind":"volume","name":null,"image":null,"content":[],"chapters":[{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"],"name":"Before You start","content":[{"inlineContent":[{"text":"In this chapter will go through all set up things that will be required in this tutorial","type":"text"}],"type":"paragraph"}],"image":"logo_tedee.png"},{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"],"image":"logo_tedee.png","content":[{"inlineContent":[{"type":"text","text":"In this chapter we will make unsecured connection to the lock and we will get all the data required to add this lock to Tedee account"}],"type":"paragraph"}],"name":"Connect and get lock data"},{"name":"Add lock to Tedee account","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"],"content":[{"inlineContent":[{"text":"In this chapter we will add the lock to Tedee account and we will register it","type":"text"}],"type":"paragraph"}],"image":"logo_tedee.png"},{"name":"Secured connection with lock","content":[{"type":"paragraph","inlineContent":[{"text":"In this chapter we will make secured connection to the lock","type":"text"}]}],"image":"logo_tedee.png","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"]},{"image":"logo_tedee.png","name":"Summary","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"],"content":[{"inlineContent":[{"text":"In this chapter we will combine all the things that we set up and prepared in previous chapters.","type":"text"}],"type":"paragraph"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"logo_tedee.png":{"identifier":"logo_tedee.png","variants":[{"url":"\/images\/logo_tedee.png","traits":["1x","light"]}],"type":"image","alt":"Tedee"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"https://portal.tedee.com":{"titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"url":"https:\/\/portal.tedee.com","identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal","type":"link"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/add-lock.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/add-lock.json index e29580e..5a4feb0 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/add-lock.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/add-lock.json @@ -1 +1 @@ -{"metadata":{"title":"Add Lock","categoryPathComponent":"how-to-add-lock","role":"project","category":"How to add Lock"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/add-lock"]}],"sections":[{"kind":"hero","chapter":"Add lock to Tedee account","estimatedTimeInMinutes":5,"content":[{"inlineContent":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"type":"paragraph"}],"title":"Add Lock"},{"tasks":[{"title":"Add Lock","anchor":"Add-Lock","contentSection":[{"content":[{"inlineContent":[{"text":"We will use add lock data and we will pass it to the Tedee API to add the lock to the account. In response, we will get data that is needed to register the lock and establish secure connection later.","type":"text"}],"type":"paragraph"}],"kind":"contentAndMedia","mediaPosition":"trailing"}],"stepsSection":[{"type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Update add lock data with lock name, activation code and current timezone."}]}],"code":"add_lock_01.swift","caption":[],"media":null,"runtimePreview":null},{"caption":[],"media":null,"code":"add_lock_02.swift","type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"runtimePreview":"add_lock_response.png"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract registration data and return TedeeRegisterLock"}]}],"caption":[],"media":null,"code":"add_lock_03.swift","type":"step","runtimePreview":null}]}],"kind":"tasks"},{"title":"Register Lock","kind":"callToAction","action":{"type":"reference","isActive":true,"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"overridingTitle":"Get started"},"abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"featuredEyebrow":"Tutorial"}],"kind":"project","references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"add_lock_03.swift":{"type":"file","syntax":"swift","highlights":[{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27}],"fileName":"addLock.swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: Any]"," "," return TedeeRegisterLock(revision: result[\"revision\"] as! Int,"," targetDeviceRevision: result[\"targetDeviceRevision\"] as! Int,"," id: result[\"id\"] as! Int,"," authPublicKey: result[\"authPublicKey\"] as! String)"," }","}"],"identifier":"add_lock_03.swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"add_lock_01.swift":{"identifier":"add_lock_01.swift","type":"file","fileName":"addLock.swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," }","}"],"syntax":"swift","highlights":[]},"https://portal.tedee.com":{"titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"title":"Tedee Portal","type":"link","identifier":"https:\/\/portal.tedee.com","url":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"add_lock_response.png":{"alt":"Add Lock response","variants":[{"url":"\/images\/add_lock_response.png","traits":["1x","light"]}],"identifier":"add_lock_response.png","type":"image"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"add_lock_02.swift":{"highlights":[{"line":10},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"identifier":"add_lock_02.swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"fileName":"addLock.swift","syntax":"swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"title":"Unsecured connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}}} \ No newline at end of file +{"sections":[{"chapter":"Add lock to Tedee account","kind":"hero","estimatedTimeInMinutes":5,"content":[{"type":"paragraph","inlineContent":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}]}],"title":"Add Lock"},{"tasks":[{"contentSection":[{"kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We will use add lock data and we will pass it to the Tedee API to add the lock to the account. In response, we will get data that is needed to register the lock and establish secure connection later."}]}],"mediaPosition":"trailing"}],"stepsSection":[{"type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Update add lock data with lock name, activation code and current timezone."}]}],"media":null,"code":"add_lock_01.swift","runtimePreview":null,"caption":[]},{"type":"step","content":[{"inlineContent":[{"type":"text","text":"Prepare and send request."}],"type":"paragraph"}],"caption":[],"media":null,"code":"add_lock_02.swift","runtimePreview":"add_lock_response.png"},{"media":null,"type":"step","code":"add_lock_03.swift","runtimePreview":null,"content":[{"inlineContent":[{"text":"Extract registration data and return TedeeRegisterLock","type":"text"}],"type":"paragraph"}],"caption":[]}],"anchor":"Add-Lock","title":"Add Lock"}],"kind":"tasks"},{"kind":"callToAction","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"featuredEyebrow":"Tutorial","action":{"isActive":true,"overridingTitle":"Get started","type":"reference","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"},"title":"Register Lock"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]],"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}]}]}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/add-lock"]}],"kind":"project","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},"metadata":{"role":"project","title":"Add Lock","category":"How to add Lock","categoryPathComponent":"how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"add_lock_01.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," }","}"],"identifier":"add_lock_01.swift","syntax":"swift","type":"file","highlights":[],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"add_lock_03.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: Any]"," "," return TedeeRegisterLock(revision: result[\"revision\"] as! Int,"," targetDeviceRevision: result[\"targetDeviceRevision\"] as! Int,"," id: result[\"id\"] as! Int,"," authPublicKey: result[\"authPublicKey\"] as! String)"," }","}"],"identifier":"add_lock_03.swift","syntax":"swift","type":"file","highlights":[{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27}],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"add_lock_02.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"identifier":"add_lock_02.swift","syntax":"swift","type":"file","highlights":[{"line":10},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"fileType":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"https://portal.tedee.com":{"url":"https:\/\/portal.tedee.com","identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"type":"link"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"add_lock_response.png":{"variants":[{"url":"\/images\/add_lock_response.png","traits":["1x","light"]}],"type":"image","alt":"Add Lock response","identifier":"add_lock_response.png"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/get-lock-data.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/get-lock-data.json index 45905c9..68b4c31 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/get-lock-data.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/get-lock-data.json @@ -1 +1 @@ -{"kind":"project","identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","interfaceLanguage":"swift"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}]}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/get-lock-data"]}],"metadata":{"role":"project","categoryPathComponent":"how-to-add-lock","title":"Get Lock data","category":"How to add Lock"},"sections":[{"estimatedTimeInMinutes":5,"kind":"hero","chapter":"Connect and get lock data","title":"Get Lock data","content":[{"inlineContent":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"paragraph"}]},{"kind":"tasks","tasks":[{"stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"TedeeLockManager require signed date time provider."}]}],"caption":[],"media":null,"code":"get_lock_data_01.swift","runtimePreview":null,"type":"step"},{"media":null,"type":"step","runtimePreview":"signed_datetime_response.png","caption":[],"code":"get_lock_data_02.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}]},{"media":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract TedeeSignedDateTime from response."}]}],"code":"get_lock_data_03.swift","type":"step","runtimePreview":null,"caption":[]}],"title":"Provide Signed date time","contentSection":[{"mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"text":"We will get signed date time from Tedee API and then provide it to the TedeeLockManager.","type":"text"}]}],"kind":"contentAndMedia"}],"anchor":"Provide-Signed-date-time"},{"anchor":"Get-lock-data","contentSection":[{"kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"We will get add lock data from unsecured connected lock.","type":"text"}]}],"mediaPosition":"trailing"}],"stepsSection":[{"content":[{"inlineContent":[{"type":"text","text":"By passing TedeeSerialNumber of the lock that we have unsecured connection. We can get add lock data"}],"type":"paragraph"}],"code":"get_lock_data_04.swift","runtimePreview":null,"media":null,"type":"step","caption":[]}],"title":"Get lock data"}]},{"kind":"callToAction","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"featuredEyebrow":"Tutorial","title":"Add Lock","action":{"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","isActive":true,"overridingTitle":"Get started","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]}}],"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"get_lock_data_01.swift":{"highlights":[],"fileName":"addLock.swift","identifier":"get_lock_data_01.swift","type":"file","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," "," }","}"],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"signed_datetime_response.png":{"alt":"Signed Datetime response","type":"image","identifier":"signed_datetime_response.png","variants":[{"url":"\/images\/signed_datetime_response.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"get_lock_data_03.swift":{"highlights":[{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18}],"fileName":"addLock.swift","identifier":"get_lock_data_03.swift","type":"file","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return TedeeSignedDateTime(datetime: result[\"datetime\"]!,"," signature: result[\"signature\"]!)"," }","}"],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"get_lock_data_04.swift":{"fileName":"addLock.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func getAddLockData(serialNumber: TedeeSerialNumber) async -> TedeeAddLock {"," try! await TedeeLockManager.shared.getAddLockData(serialNumber)"," }","}"],"identifier":"get_lock_data_04.swift","fileType":"swift","highlights":[],"syntax":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"get_lock_data_02.swift":{"highlights":[{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":12}],"fileType":"swift","identifier":"get_lock_data_02.swift","syntax":"swift","type":"file","fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"https://portal.tedee.com":{"url":"https:\/\/portal.tedee.com","title":"Tedee Portal","type":"link","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"}}} \ No newline at end of file +{"metadata":{"role":"project","title":"Get Lock data","categoryPathComponent":"how-to-add-lock","category":"How to add Lock"},"hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"kind":"project","schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/get-lock-data"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"sections":[{"chapter":"Connect and get lock data","kind":"hero","title":"Get Lock data","estimatedTimeInMinutes":5,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}]}]},{"kind":"tasks","tasks":[{"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"We will get signed date time from Tedee API and then provide it to the TedeeLockManager.","type":"text"}]}]}],"title":"Provide Signed date time","anchor":"Provide-Signed-date-time","stepsSection":[{"caption":[],"code":"get_lock_data_01.swift","media":null,"runtimePreview":null,"type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager require signed date time provider.","type":"text"}]}]},{"caption":[],"code":"get_lock_data_02.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"type":"step","runtimePreview":"signed_datetime_response.png","media":null},{"caption":[],"media":null,"content":[{"inlineContent":[{"type":"text","text":"Extract TedeeSignedDateTime from response."}],"type":"paragraph"}],"code":"get_lock_data_03.swift","runtimePreview":null,"type":"step"}]},{"title":"Get lock data","anchor":"Get-lock-data","stepsSection":[{"content":[{"inlineContent":[{"type":"text","text":"By passing TedeeSerialNumber of the lock that we have unsecured connection. We can get add lock data"}],"type":"paragraph"}],"caption":[],"media":null,"code":"get_lock_data_04.swift","type":"step","runtimePreview":null}],"contentSection":[{"content":[{"type":"paragraph","inlineContent":[{"text":"We will get add lock data from unsecured connected lock.","type":"text"}]}],"mediaPosition":"trailing","kind":"contentAndMedia"}]}]},{"title":"Add Lock","featuredEyebrow":"Tutorial","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"kind":"callToAction","action":{"overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","isActive":true,"type":"reference","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]}}],"references":{"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"get_lock_data_02.swift":{"type":"file","identifier":"get_lock_data_02.swift","highlights":[{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":12}],"content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"syntax":"swift","fileName":"addLock.swift","fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"get_lock_data_01.swift":{"fileType":"swift","syntax":"swift","highlights":[],"type":"file","identifier":"get_lock_data_01.swift","fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," "," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"get_lock_data_03.swift":{"fileName":"addLock.swift","highlights":[{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18}],"identifier":"get_lock_data_03.swift","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return TedeeSignedDateTime(datetime: result[\"datetime\"]!,"," signature: result[\"signature\"]!)"," }","}"],"type":"file","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"signed_datetime_response.png":{"type":"image","identifier":"signed_datetime_response.png","alt":"Signed Datetime response","variants":[{"traits":["1x","light"],"url":"\/images\/signed_datetime_response.png"}]},"get_lock_data_04.swift":{"highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getAddLockData(serialNumber: TedeeSerialNumber) async -> TedeeAddLock {"," try! await TedeeLockManager.shared.getAddLockData(serialNumber)"," }","}"],"identifier":"get_lock_data_04.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"https://portal.tedee.com":{"type":"link","identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/pak-set-up.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/pak-set-up.json index 12396e5..3b4881b 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/pak-set-up.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/pak-set-up.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"project","variants":[{"paths":["\/tutorials\/tedeelock\/pak-set-up"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[{"estimatedTimeInMinutes":5,"kind":"hero","title":"Personal Access Key","chapter":"Before You start","content":[{"type":"paragraph","inlineContent":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]}]},{"kind":"tasks","tasks":[{"contentSection":[{"kind":"contentAndMedia","content":[{"inlineContent":[{"type":"text","text":"We will create personal access key, that we will use to authorise in Tedee API"}],"type":"paragraph"}],"mediaPosition":"trailing"}],"title":"Personal Access Key","anchor":"Personal-Access-Key","stepsSection":[{"code":null,"type":"step","content":[{"inlineContent":[{"text":"Log in to ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/portal.tedee.com"},{"text":".","type":"text"}],"type":"paragraph"}],"media":"tedee_portal.png","caption":[],"runtimePreview":null},{"type":"step","runtimePreview":null,"caption":[],"content":[{"type":"paragraph","inlineContent":[{"text":"Click on your profile icon and select “Personal access keys”.","type":"text"}]}],"media":"tedee_portal_profile.png","code":null},{"type":"step","code":null,"runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"Select “Add key”."}],"type":"paragraph"}],"media":"tedee_portal_pak_view.png","caption":[]},{"type":"step","runtimePreview":null,"code":null,"media":"tedee_portal_pak_configuration.png","caption":[],"content":[{"inlineContent":[{"text":"Configure new key with access scopes: devices read and write, device certificates read, mobile read and write.","type":"text"}],"type":"paragraph"}]},{"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Save new key for later use.","type":"text"}]}],"code":null,"caption":[],"type":"step","media":"tedee_portal_pak_created.png"}]}]},{"featuredEyebrow":"Tutorial","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"action":{"overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","overridingTitleInlineContent":[{"text":"Get started","type":"text"}],"type":"reference","isActive":true},"kind":"callToAction","title":"Unsecured Connection"}],"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","interfaceLanguage":"swift"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"metadata":{"categoryPathComponent":"how-to-add-lock","role":"project","title":"Personal Access Key","category":"How to add Lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"tedee_portal_pak_created.png":{"alt":"Tedee portal","type":"image","identifier":"tedee_portal_pak_created.png","variants":[{"url":"\/images\/tedee_portal_pak_created.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"tedee_portal_pak_view.png":{"type":"image","alt":"Tedee portal","identifier":"tedee_portal_pak_view.png","variants":[{"url":"\/images\/tedee_portal_pak_view.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"tedee_portal_profile.png":{"alt":"Tedee portal","identifier":"tedee_portal_profile.png","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_profile.png"}],"type":"image"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"tedee_portal_pak_configuration.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_pak_configuration.png"}],"alt":"Tedee portal","type":"image","identifier":"tedee_portal_pak_configuration.png"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","type":"link","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"tedee_portal.png":{"alt":"Tedee portal","type":"image","identifier":"tedee_portal.png","variants":[{"url":"\/images\/tedee_portal.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"project","identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/pak-set-up"]}],"sections":[{"chapter":"Before You start","title":"Personal Access Key","kind":"hero","estimatedTimeInMinutes":5,"content":[{"inlineContent":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"isActive":true,"identifier":"https:\/\/portal.tedee.com","type":"reference"},{"text":".","type":"text"}],"type":"paragraph"}]},{"kind":"tasks","tasks":[{"stepsSection":[{"caption":[],"type":"step","media":"tedee_portal.png","code":null,"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Log in to "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"text":".","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Click on your profile icon and select “Personal access keys”.","type":"text"}]}],"media":"tedee_portal_profile.png","runtimePreview":null,"code":null,"caption":[],"type":"step"},{"code":null,"runtimePreview":null,"type":"step","caption":[],"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Select “Add key”."}]}],"media":"tedee_portal_pak_view.png"},{"caption":[],"content":[{"inlineContent":[{"text":"Configure new key with access scopes: devices read and write, device certificates read, mobile read and write.","type":"text"}],"type":"paragraph"}],"media":"tedee_portal_pak_configuration.png","runtimePreview":null,"type":"step","code":null},{"type":"step","code":null,"caption":[],"runtimePreview":null,"media":"tedee_portal_pak_created.png","content":[{"inlineContent":[{"type":"text","text":"Save new key for later use."}],"type":"paragraph"}]}],"anchor":"Personal-Access-Key","title":"Personal Access Key","contentSection":[{"content":[{"inlineContent":[{"text":"We will create personal access key, that we will use to authorise in Tedee API","type":"text"}],"type":"paragraph"}],"mediaPosition":"trailing","kind":"contentAndMedia"}]}]},{"kind":"callToAction","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"title":"Unsecured Connection","action":{"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","overridingTitle":"Get started","isActive":true,"overridingTitleInlineContent":[{"text":"Get started","type":"text"}]},"featuredEyebrow":"Tutorial"}],"metadata":{"categoryPathComponent":"how-to-add-lock","category":"How to add Lock","role":"project","title":"Personal Access Key"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]]},"references":{"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"https://portal.tedee.com":{"url":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"title":"Tedee Portal","type":"link","identifier":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"tedee_portal_pak_view.png":{"type":"image","alt":"Tedee portal","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_pak_view.png"}],"identifier":"tedee_portal_pak_view.png"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"tedee_portal_pak_created.png":{"type":"image","variants":[{"url":"\/images\/tedee_portal_pak_created.png","traits":["1x","light"]}],"alt":"Tedee portal","identifier":"tedee_portal_pak_created.png"},"tedee_portal_profile.png":{"identifier":"tedee_portal_profile.png","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_profile.png"}],"type":"image","alt":"Tedee portal"},"tedee_portal.png":{"type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal.png"}],"alt":"Tedee portal","identifier":"tedee_portal.png"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"tedee_portal_pak_configuration.png":{"alt":"Tedee portal","identifier":"tedee_portal_pak_configuration.png","type":"image","variants":[{"url":"\/images\/tedee_portal_pak_configuration.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/register-lock.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/register-lock.json index 5951806..bc1eb46 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/register-lock.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/register-lock.json @@ -1 +1 @@ -{"kind":"project","sections":[{"title":"Register Lock","chapter":"Add lock to Tedee account","estimatedTimeInMinutes":2,"kind":"hero","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}]}]},{"tasks":[{"contentSection":[{"mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We will use TedeeRegisterLock that we get from adding lock to the Tedee account to register the lock."}]}],"kind":"contentAndMedia"}],"title":"Register Lock","anchor":"Register-Lock","stepsSection":[{"type":"step","media":null,"content":[{"inlineContent":[{"text":"Check if lock is still connected and if yes, then register it.","type":"text"}],"type":"paragraph"}],"code":"register_lock_01.swift","runtimePreview":null,"caption":[]},{"caption":[],"code":"register_lock_02.swift","type":"step","media":null,"content":[{"type":"paragraph","inlineContent":[{"text":"If not, then connect to the lock and after that, register it.","type":"text"}]}],"runtimePreview":null}]}],"kind":"tasks"},{"featuredEyebrow":"Tutorial","title":"Secured Connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"callToAction","action":{"overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","overridingTitle":"Get started","type":"reference"}}],"hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]]},"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","interfaceLanguage":"swift"},"metadata":{"role":"project","category":"How to add Lock","categoryPathComponent":"how-to-add-lock","title":"Register Lock"},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/register-lock"]}],"references":{"register_lock_02.swift":{"fileName":"addLock.swift","highlights":[{"line":8},{"line":9},{"line":10}],"identifier":"register_lock_02.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," } else {"," await unsecuredConnection(serialNumber: serialNumber)"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"url":"https:\/\/portal.tedee.com","type":"link"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"register_lock_01.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"register_lock_01.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"]},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","interfaceLanguage":"swift"},"kind":"project","hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"metadata":{"categoryPathComponent":"how-to-add-lock","title":"Register Lock","role":"project","category":"How to add Lock"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/register-lock"]}],"sections":[{"estimatedTimeInMinutes":2,"kind":"hero","content":[{"inlineContent":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"type":"paragraph"}],"title":"Register Lock","chapter":"Add lock to Tedee account"},{"tasks":[{"stepsSection":[{"media":null,"caption":[],"type":"step","code":"register_lock_01.swift","runtimePreview":null,"content":[{"inlineContent":[{"text":"Check if lock is still connected and if yes, then register it.","type":"text"}],"type":"paragraph"}]},{"runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"If not, then connect to the lock and after that, register it."}],"type":"paragraph"}],"caption":[],"code":"register_lock_02.swift","type":"step","media":null}],"title":"Register Lock","anchor":"Register-Lock","contentSection":[{"kind":"contentAndMedia","content":[{"inlineContent":[{"text":"We will use TedeeRegisterLock that we get from adding lock to the Tedee account to register the lock.","type":"text"}],"type":"paragraph"}],"mediaPosition":"trailing"}]}],"kind":"tasks"},{"action":{"overridingTitle":"Get started","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"reference"},"featuredEyebrow":"Tutorial","title":"Secured Connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"kind":"callToAction"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"register_lock_02.swift":{"syntax":"swift","fileName":"addLock.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," } else {"," await unsecuredConnection(serialNumber: serialNumber)"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"],"fileType":"swift","identifier":"register_lock_02.swift","highlights":[{"line":8},{"line":9},{"line":10}]},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"https://portal.tedee.com":{"type":"link","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"register_lock_01.swift":{"type":"file","fileType":"swift","highlights":[],"syntax":"swift","identifier":"register_lock_01.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"],"fileName":"addLock.swift"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/requirements.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/requirements.json index a2020f7..120d631 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/requirements.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/requirements.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/requirements"]}],"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","interfaceLanguage":"swift"},"sections":[{"estimatedTimeInMinutes":5,"chapter":"Before You start","content":[{"inlineContent":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"paragraph"}],"kind":"hero","title":"Requirements"},{"kind":"tasks","tasks":[{"anchor":"Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO","contentSection":[{"content":[],"mediaPosition":"trailing","kind":"contentAndMedia"}],"stepsSection":[{"code":null,"content":[{"type":"paragraph","inlineContent":[{"text":"You need to have Tedee Pro or Tedee Go lock. You can acquire one at ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/tedee.com"},{"text":".","type":"text"}]}],"caption":[],"type":"step","media":"lock_pro.png","runtimePreview":null},{"media":"factory_reset.png","code":null,"type":"step","caption":[],"runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"Your lock must be factory reseted, you can check how to do it "},{"identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","isActive":true,"type":"reference"},{"type":"text","text":"."}],"type":"paragraph"}]},{"media":"remove_from_account.png","runtimePreview":null,"type":"step","caption":[],"content":[{"inlineContent":[{"type":"text","text":"Your lock cannot be added to any account. If you added your lock before, you can delete it from account using Tedee app."}],"type":"paragraph"}],"code":null}]},{"anchor":"Activation-code","title":"Activation code","contentSection":[{"content":[],"kind":"contentAndMedia","mediaPosition":"trailing"}],"stepsSection":[{"content":[{"inlineContent":[{"type":"text","text":"Activation code of your lock."}],"type":"paragraph"}],"media":"activation_code.png","caption":[],"runtimePreview":null,"type":"step","code":null}]},{"anchor":"Tedee-account","title":"Tedee account","contentSection":[{"kind":"contentAndMedia","content":[],"mediaPosition":"trailing"}],"stepsSection":[{"type":"step","runtimePreview":null,"media":"create_account.png","code":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"You should have a working Tedee account. You can create one from "},{"isActive":true,"type":"reference","identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl"},{"text":".","type":"text"}]}],"caption":[]}]}]},{"action":{"type":"reference","isActive":true,"overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]},"abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"type":"reference","isActive":true,"identifier":"https:\/\/portal.tedee.com"},{"text":".","type":"text"}],"kind":"callToAction","title":"Personal Access Key","featuredEyebrow":"Tutorial"}],"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]]},"kind":"project","schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"role":"project","categoryPathComponent":"how-to-add-lock","category":"How to add Lock","title":"Requirements"},"references":{"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"lock_pro.png":{"variants":[{"url":"\/images\/lock_pro.png","traits":["1x","light"]}],"identifier":"lock_pro.png","alt":"Tedee Pro","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"create_account.png":{"identifier":"create_account.png","alt":"Create account","type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/create_account.png"}]},"activation_code.png":{"variants":[{"url":"\/images\/activation_code.png","traits":["1x","light"]}],"identifier":"activation_code.png","alt":"Activation code","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"factory_reset.png":{"identifier":"factory_reset.png","alt":"Factory reset","type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/factory_reset.png"}]},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"https://apps.apple.com/pl/app/tedee/id1481874162?l=pl":{"titleInlineContent":[{"text":"Tedee mobile app","type":"text"}],"title":"Tedee mobile app","identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","url":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","type":"link"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"https://tedee.com":{"identifier":"https:\/\/tedee.com","titleInlineContent":[{"type":"text","text":"tedee.com"}],"type":"link","url":"https:\/\/tedee.com","title":"tedee.com"},"remove_from_account.png":{"variants":[{"url":"\/images\/remove_from_account.png","traits":["1x","light"]}],"identifier":"remove_from_account.png","alt":"Remove from account","type":"image"},"https://portal.tedee.com":{"identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"https://tedee.com/knowledge-base/factory-reset/":{"titleInlineContent":[{"text":"here","type":"text"}],"title":"here","identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","url":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","type":"link"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"}}} \ No newline at end of file +{"kind":"project","hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/requirements"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"category":"How to add Lock","categoryPathComponent":"how-to-add-lock","role":"project","title":"Requirements"},"sections":[{"content":[{"inlineContent":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"paragraph"}],"chapter":"Before You start","title":"Requirements","kind":"hero","estimatedTimeInMinutes":5},{"kind":"tasks","tasks":[{"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[]}],"stepsSection":[{"caption":[],"type":"step","media":"lock_pro.png","code":null,"content":[{"inlineContent":[{"type":"text","text":"You need to have Tedee Pro or Tedee Go lock. You can acquire one at "},{"type":"reference","isActive":true,"identifier":"https:\/\/tedee.com"},{"text":".","type":"text"}],"type":"paragraph"}],"runtimePreview":null},{"media":"factory_reset.png","code":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Your lock must be factory reseted, you can check how to do it ","type":"text"},{"identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","isActive":true,"type":"reference"},{"type":"text","text":"."}]}],"runtimePreview":null,"caption":[],"type":"step"},{"content":[{"inlineContent":[{"type":"text","text":"Your lock cannot be added to any account. If you added your lock before, you can delete it from account using Tedee app."}],"type":"paragraph"}],"caption":[],"media":"remove_from_account.png","code":null,"type":"step","runtimePreview":null}],"anchor":"Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},{"title":"Activation code","stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Activation code of your lock."}]}],"type":"step","runtimePreview":null,"media":"activation_code.png","caption":[],"code":null}],"contentSection":[{"content":[],"kind":"contentAndMedia","mediaPosition":"trailing"}],"anchor":"Activation-code"},{"stepsSection":[{"code":null,"content":[{"type":"paragraph","inlineContent":[{"text":"You should have a working Tedee account. You can create one from ","type":"text"},{"identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","isActive":true,"type":"reference"},{"type":"text","text":"."}]}],"runtimePreview":null,"media":"create_account.png","caption":[],"type":"step"}],"anchor":"Tedee-account","contentSection":[{"content":[],"mediaPosition":"trailing","kind":"contentAndMedia"}],"title":"Tedee account"}]},{"action":{"overridingTitle":"Get started","isActive":true,"overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"},"featuredEyebrow":"Tutorial","kind":"callToAction","title":"Personal Access Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/portal.tedee.com"},{"type":"text","text":"."}]}],"references":{"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"https://portal.tedee.com":{"type":"link","url":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"https://tedee.com":{"identifier":"https:\/\/tedee.com","titleInlineContent":[{"type":"text","text":"tedee.com"}],"type":"link","title":"tedee.com","url":"https:\/\/tedee.com"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"lock_pro.png":{"alt":"Tedee Pro","identifier":"lock_pro.png","variants":[{"traits":["1x","light"],"url":"\/images\/lock_pro.png"}],"type":"image"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"https://tedee.com/knowledge-base/factory-reset/":{"identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","titleInlineContent":[{"type":"text","text":"here"}],"type":"link","title":"here","url":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"remove_from_account.png":{"alt":"Remove from account","identifier":"remove_from_account.png","variants":[{"traits":["1x","light"],"url":"\/images\/remove_from_account.png"}],"type":"image"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"activation_code.png":{"identifier":"activation_code.png","variants":[{"url":"\/images\/activation_code.png","traits":["1x","light"]}],"type":"image","alt":"Activation code"},"factory_reset.png":{"alt":"Factory reset","identifier":"factory_reset.png","variants":[{"traits":["1x","light"],"url":"\/images\/factory_reset.png"}],"type":"image"},"https://apps.apple.com/pl/app/tedee/id1481874162?l=pl":{"identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","titleInlineContent":[{"type":"text","text":"Tedee mobile app"}],"type":"link","title":"Tedee mobile app","url":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"create_account.png":{"alt":"Create account","identifier":"create_account.png","variants":[{"traits":["1x","light"],"url":"\/images\/create_account.png"}],"type":"image"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/secured-connection.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/secured-connection.json index 8775793..85c914c 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/secured-connection.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/secured-connection.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/secured-connection"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"categoryPathComponent":"how-to-add-lock","role":"project","category":"How to add Lock","title":"Secured Connection"},"kind":"project","sections":[{"kind":"hero","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}]}],"estimatedTimeInMinutes":5,"chapter":"Secured connection with lock","title":"Secured Connection"},{"tasks":[{"contentSection":[{"kind":"contentAndMedia","mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We need to get certificate for this lock from Tedee API"}]}]}],"anchor":"Device-Certificate","title":"Device Certificate","stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Get previously saved mobile id."}]}],"caption":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We will pass to this function device id that we get in a response from add lock request."}]}],"code":"secured_connection_01.swift","runtimePreview":null,"type":"step","media":null},{"type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"runtimePreview":"certificate_response.png","caption":[],"code":"secured_connection_02.swift","media":null},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract certificate and return TedeeCertificate."}]}],"runtimePreview":null,"type":"step","caption":[],"media":null,"code":"secured_connection_03.swift"}]},{"title":"Secured connection","stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"text":"With the certificate, we can make secured connection.","type":"text"}]}],"type":"step","code":"secured_connection_04.swift","runtimePreview":null,"media":null,"caption":[]}],"contentSection":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Now, we can make secured connection to the lock.","type":"text"}]}],"mediaPosition":"trailing","kind":"contentAndMedia"}],"anchor":"Secured-connection"}],"kind":"tasks"},{"action":{"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"overridingTitle":"Get started"},"abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"featuredEyebrow":"Tutorial","kind":"callToAction","title":"Summary"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"]],"modules":[{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"secured_connection_04.swift":{"identifier":"secured_connection_04.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func securedConnection(serialNumber: TedeeSerialNumber, certificate: TedeeCertificate) async {"," try! await TedeeLockManager.shared.connect(serialNumber, certificate: certificate)"," }","}"],"fileName":"addLock.swift","highlights":[],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"secured_connection_01.swift":{"identifier":"secured_connection_01.swift","fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," }","}"],"type":"file","highlights":[],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"secured_connection_03.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," let dF = DateFormatter()"," dF.dateFormat = \"yyyy-MM-dd'T'HH:mm:ss.SSSSSSS'Z'\""," dF.locale = Locale(identifier: \"en_US_POSIX\")"," dF.timeZone = TimeZone(abbreviation: \"UTC\")"," let expirationDate = dF.date(from: result[\"expirationDate\"]!)"," "," return try! TedeeCertificate(certificate: result[\"certificate\"]!,"," expirationDate: expirationDate!,"," devicePublicKey: result[\"devicePublicKey\"]!,"," mobilePublicKey: result[\"mobilePublicKey\"]!)"," }","}"],"syntax":"swift","fileType":"swift","type":"file","highlights":[{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27},{"line":28}],"identifier":"secured_connection_03.swift","fileName":"addLock.swift"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"https://portal.tedee.com":{"titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"identifier":"https:\/\/portal.tedee.com","type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"certificate_response.png":{"type":"image","variants":[{"url":"\/images\/certificate_response.png","traits":["1x","light"]}],"identifier":"certificate_response.png","alt":"Certificate response"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"secured_connection_02.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"syntax":"swift","fileType":"swift","type":"file","highlights":[{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"identifier":"secured_connection_02.swift","fileName":"addLock.swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","interfaceLanguage":"swift"},"kind":"project","hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}]}]}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[{"kind":"hero","title":"Secured Connection","estimatedTimeInMinutes":5,"chapter":"Secured connection with lock","content":[{"type":"paragraph","inlineContent":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}]}]},{"tasks":[{"stepsSection":[{"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Get previously saved mobile id."}]}],"media":null,"type":"step","caption":[{"inlineContent":[{"text":"We will pass to this function device id that we get in a response from add lock request.","type":"text"}],"type":"paragraph"}],"code":"secured_connection_01.swift"},{"code":"secured_connection_02.swift","runtimePreview":"certificate_response.png","caption":[],"media":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"type":"step"},{"type":"step","content":[{"inlineContent":[{"type":"text","text":"Extract certificate and return TedeeCertificate."}],"type":"paragraph"}],"caption":[],"code":"secured_connection_03.swift","runtimePreview":null,"media":null}],"contentSection":[{"mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"text":"We need to get certificate for this lock from Tedee API","type":"text"}]}],"kind":"contentAndMedia"}],"anchor":"Device-Certificate","title":"Device Certificate"},{"contentSection":[{"kind":"contentAndMedia","mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"text":"Now, we can make secured connection to the lock.","type":"text"}]}]}],"title":"Secured connection","stepsSection":[{"runtimePreview":null,"type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"With the certificate, we can make secured connection.","type":"text"}]}],"media":null,"caption":[],"code":"secured_connection_04.swift"}],"anchor":"Secured-connection"}],"kind":"tasks"},{"kind":"callToAction","title":"Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"featuredEyebrow":"Tutorial","action":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","isActive":true,"type":"reference","overridingTitle":"Get started","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]}}],"metadata":{"title":"Secured Connection","category":"How to add Lock","categoryPathComponent":"how-to-add-lock","role":"project"},"variants":[{"paths":["\/tutorials\/tedeelock\/secured-connection"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"certificate_response.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/certificate_response.png"}],"alt":"Certificate response","identifier":"certificate_response.png","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"secured_connection_01.swift":{"highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," }","}"],"identifier":"secured_connection_01.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"secured_connection_04.swift":{"identifier":"secured_connection_04.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func securedConnection(serialNumber: TedeeSerialNumber, certificate: TedeeCertificate) async {"," try! await TedeeLockManager.shared.connect(serialNumber, certificate: certificate)"," }","}"],"syntax":"swift","fileType":"swift","fileName":"addLock.swift","highlights":[]},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"secured_connection_02.swift":{"highlights":[{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"identifier":"secured_connection_02.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"https://portal.tedee.com":{"titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"url":"https:\/\/portal.tedee.com","title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","type":"link"},"secured_connection_03.swift":{"highlights":[{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27},{"line":28}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," let dF = DateFormatter()"," dF.dateFormat = \"yyyy-MM-dd'T'HH:mm:ss.SSSSSSS'Z'\""," dF.locale = Locale(identifier: \"en_US_POSIX\")"," dF.timeZone = TimeZone(abbreviation: \"UTC\")"," let expirationDate = dF.date(from: result[\"expirationDate\"]!)"," "," return try! TedeeCertificate(certificate: result[\"certificate\"]!,"," expirationDate: expirationDate!,"," devicePublicKey: result[\"devicePublicKey\"]!,"," mobilePublicKey: result[\"mobilePublicKey\"]!)"," }","}"],"identifier":"secured_connection_03.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/summary.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/summary.json index ef5da01..552af38 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/summary.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/summary.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/summary"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"},"metadata":{"role":"project","category":"How to add Lock","categoryPathComponent":"how-to-add-lock","title":"Summary"},"sections":[{"kind":"hero","chapter":"Summary","estimatedTimeInMinutes":3,"title":"Summary","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}]}]},{"tasks":[{"contentSection":[{"kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"By the end of this section, you should have all the necessary work done and you should be able to successfully add you lock to Tedee account and securely connect to it.","type":"text"}]}],"mediaPosition":"trailing"}],"title":"Summary","stepsSection":[{"caption":[],"content":[{"type":"paragraph","inlineContent":[{"text":"Configure signed date time provider.","type":"text"}]}],"type":"step","media":null,"code":"summary_01.swift","runtimePreview":null},{"code":"summary_02.swift","type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"Register mobile.","type":"text"}]}],"media":null,"runtimePreview":null,"caption":[]},{"caption":[],"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Get serial number.","type":"text"}]}],"type":"step","media":null,"code":"summary_03.swift"},{"media":null,"runtimePreview":null,"type":"step","code":"summary_04.swift","content":[{"inlineContent":[{"text":"Make unsecured connection to the lock.","type":"text"}],"type":"paragraph"}],"caption":[]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Get add lock data.","type":"text"}]}],"caption":[],"media":null,"code":"summary_05.swift","runtimePreview":null,"type":"step"},{"type":"step","media":null,"caption":[],"code":"summary_06.swift","content":[{"inlineContent":[{"text":"Add lock to Tedee account and get register lock data.","type":"text"}],"type":"paragraph"}],"runtimePreview":null},{"code":"summary_07.swift","type":"step","runtimePreview":null,"content":[{"inlineContent":[{"text":"Register lock.","type":"text"}],"type":"paragraph"}],"media":null,"caption":[]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Get lock certificate."}]}],"caption":[],"type":"step","media":null,"code":"summary_08.swift","runtimePreview":null},{"media":null,"code":"summary_09.swift","type":"step","caption":[],"content":[{"inlineContent":[{"type":"text","text":"Make secured connection to the lock."}],"type":"paragraph"}],"runtimePreview":null}],"anchor":"Summary"}],"kind":"tasks"}],"kind":"project","hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"]]},"references":{"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"summary_04.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," }","}"],"identifier":"summary_04.swift","type":"file","highlights":[{"line":9}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"summary_08.swift":{"fileName":"addLock.swift","identifier":"summary_08.swift","type":"file","highlights":[{"line":13}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," }","}"],"fileType":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"summary_09.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," await securedConnection(serialNumber: serialNumber, certificate: certificate)"," }","}"],"identifier":"summary_09.swift","type":"file","highlights":[{"line":14}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"summary_02.swift":{"fileName":"addLock.swift","identifier":"summary_02.swift","type":"file","highlights":[{"line":7}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," }","}"],"fileType":"swift"},"https://portal.tedee.com":{"type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}]},"summary_07.swift":{"fileName":"addLock.swift","identifier":"summary_07.swift","type":"file","highlights":[{"line":12}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," }","}"],"fileType":"swift"},"summary_05.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," }","}"],"identifier":"summary_05.swift","type":"file","highlights":[{"line":10}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"summary_03.swift":{"fileName":"addLock.swift","identifier":"summary_03.swift","type":"file","highlights":[{"line":8}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," }","}"],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"summary_06.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," }","}"],"identifier":"summary_06.swift","type":"file","highlights":[{"line":11}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"summary_01.swift":{"fileName":"addLock.swift","identifier":"summary_01.swift","type":"file","highlights":[],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," }","}"],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"}}} \ No newline at end of file +{"sections":[{"title":"Summary","chapter":"Summary","estimatedTimeInMinutes":3,"content":[{"inlineContent":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"type":"paragraph"}],"kind":"hero"},{"kind":"tasks","tasks":[{"stepsSection":[{"runtimePreview":null,"media":null,"code":"summary_01.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Configure signed date time provider."}]}],"caption":[],"type":"step"},{"code":"summary_02.swift","runtimePreview":null,"caption":[],"media":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Register mobile.","type":"text"}]}],"type":"step"},{"type":"step","content":[{"inlineContent":[{"type":"text","text":"Get serial number."}],"type":"paragraph"}],"caption":[],"code":"summary_03.swift","runtimePreview":null,"media":null},{"content":[{"inlineContent":[{"type":"text","text":"Make unsecured connection to the lock."}],"type":"paragraph"}],"caption":[],"type":"step","media":null,"code":"summary_04.swift","runtimePreview":null},{"type":"step","content":[{"inlineContent":[{"text":"Get add lock data.","type":"text"}],"type":"paragraph"}],"caption":[],"code":"summary_05.swift","media":null,"runtimePreview":null},{"caption":[],"code":"summary_06.swift","content":[{"inlineContent":[{"type":"text","text":"Add lock to Tedee account and get register lock data."}],"type":"paragraph"}],"type":"step","runtimePreview":null,"media":null},{"caption":[],"media":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Register lock.","type":"text"}]}],"type":"step","code":"summary_07.swift","runtimePreview":null},{"runtimePreview":null,"caption":[],"media":null,"code":"summary_08.swift","type":"step","content":[{"inlineContent":[{"text":"Get lock certificate.","type":"text"}],"type":"paragraph"}]},{"type":"step","media":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Make secured connection to the lock."}]}],"code":"summary_09.swift","runtimePreview":null,"caption":[]}],"title":"Summary","contentSection":[{"kind":"contentAndMedia","content":[{"inlineContent":[{"type":"text","text":"By the end of this section, you should have all the necessary work done and you should be able to successfully add you lock to Tedee account and securely connect to it."}],"type":"paragraph"}],"mediaPosition":"trailing"}],"anchor":"Summary"}]}],"kind":"project","schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/tutorials\/tedeelock\/summary"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"},"metadata":{"title":"Summary","categoryPathComponent":"how-to-add-lock","role":"project","category":"How to add Lock"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}]},"references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"summary_04.swift":{"highlights":[{"line":9}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," }","}"],"identifier":"summary_04.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"summary_01.swift":{"highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," }","}"],"identifier":"summary_01.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_08.swift":{"highlights":[{"line":13}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," }","}"],"identifier":"summary_08.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"summary_03.swift":{"highlights":[{"line":8}],"identifier":"summary_03.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," }","}"],"fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"summary_07.swift":{"highlights":[{"line":12}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," }","}"],"identifier":"summary_07.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_06.swift":{"highlights":[{"line":11}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," }","}"],"identifier":"summary_06.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"summary_09.swift":{"highlights":[{"line":14}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," await securedConnection(serialNumber: serialNumber, certificate: certificate)"," }","}"],"identifier":"summary_09.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_05.swift":{"highlights":[{"line":10}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," }","}"],"identifier":"summary_05.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_02.swift":{"highlights":[{"line":7}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," }","}"],"identifier":"summary_02.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"https://portal.tedee.com":{"title":"Tedee Portal","url":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"type":"link","identifier":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/data/tutorials/tedeelock/unsecured-connection.json b/TedeeLock.doccarchive/data/tutorials/tedeelock/unsecured-connection.json index d3b8eb9..4277785 100644 --- a/TedeeLock.doccarchive/data/tutorials/tedeelock/unsecured-connection.json +++ b/TedeeLock.doccarchive/data/tutorials/tedeelock/unsecured-connection.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[{"chapter":"Connect and get lock data","title":"Unsecured Connection","estimatedTimeInMinutes":10,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}]}],"kind":"hero"},{"tasks":[{"title":"Registering mobile","stepsSection":[{"type":"step","caption":[],"code":"unsecured_connection_01.swift","runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"Configure your Personal Access Token."}],"type":"paragraph"}],"media":null},{"type":"step","content":[{"inlineContent":[{"text":"Check if you already register mobile.","type":"text"}],"type":"paragraph"}],"media":null,"runtimePreview":null,"caption":[],"code":"unsecured_connection_02.swift"},{"caption":[],"content":[{"type":"paragraph","inlineContent":[{"text":"Prepare and send request.","type":"text"}]}],"code":"unsecured_connection_03.swift","type":"step","media":null,"runtimePreview":"mobile_registration.png"},{"caption":[],"code":"unsecured_connection_04.swift","type":"step","content":[{"inlineContent":[{"text":"Extract mobile id from response and save it.","type":"text"}],"type":"paragraph"}],"media":null,"runtimePreview":null}],"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"inlineContent":[{"text":"To register mobile in Tedee API we need public key that the sdk is generating for you. Registration should done only once.","type":"text"}],"type":"paragraph"}]}],"anchor":"Registering-mobile"},{"title":"Serial number ","contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number is required to make any connection to the lock. At this point we can get it from Tedee API by providing the activation code."}]}]}],"stepsSection":[{"content":[{"inlineContent":[{"text":"Configure activation code of your Tedee Pro or Tedee GO.","type":"text"}],"type":"paragraph"}],"type":"step","caption":[],"runtimePreview":null,"media":null,"code":"unsecured_connection_05.swift"},{"runtimePreview":"serial_number_response.png","content":[{"inlineContent":[{"text":"Prepare and send request.","type":"text"}],"type":"paragraph"}],"code":"unsecured_connection_06.swift","type":"step","caption":[],"media":null},{"caption":[],"media":null,"runtimePreview":null,"code":"unsecured_connection_07.swift","type":"step","content":[{"inlineContent":[{"text":"Extract serial number from response","type":"text"}],"type":"paragraph"}]}],"anchor":"Serial-number"},{"stepsSection":[{"runtimePreview":null,"caption":[],"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"By passing TedeeSerialNumber from previous section, we can made unsecured connection to the lock."}]}],"code":"unsecured_connection_08.swift","type":"step","media":null}],"title":"Unsecured connection","anchor":"Unsecured-connection","contentSection":[{"content":[{"inlineContent":[{"text":"With serial number, we can now connect to the lock.","type":"text"}],"type":"paragraph"}],"mediaPosition":"trailing","kind":"contentAndMedia"}]}],"kind":"tasks"},{"abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data","kind":"callToAction","action":{"overridingTitleInlineContent":[{"text":"Get started","type":"text"}],"isActive":true,"type":"reference","overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"featuredEyebrow":"Tutorial"}],"metadata":{"categoryPathComponent":"how-to-add-lock","title":"Unsecured Connection","role":"project","category":"How to add Lock"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","interfaceLanguage":"swift"},"kind":"project","variants":[{"paths":["\/tutorials\/tedeelock\/unsecured-connection"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"mobile_registration.png":{"identifier":"mobile_registration.png","alt":"Mobile registration response","type":"image","variants":[{"url":"\/images\/mobile_registration.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"unsecured_connection_03.swift":{"fileName":"addLock.swift","highlights":[{"line":2},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25}],"identifier":"unsecured_connection_03.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"unsecured_connection_07.swift":{"fileName":"addLock.swift","highlights":[{"line":2},{"line":7},{"line":8},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"identifier":"unsecured_connection_07.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() await -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activatio)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return try! TedeeSerialNumber(serialNumber: result[\"serialNumber\"]!)"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"unsecured_connection_01.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"unsecured_connection_01.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\"","}"]},"unsecured_connection_08.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"unsecured_connection_08.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func unsecuredConnection(serialNumber: TedeeSerialNumber) async {"," do {"," try await TedeeLockManager.shared.unsecureConnect(serialNumber)"," } catch {"," fatalError(\"Connection failure: \\(error)\")"," }"," }","}"]},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com","type":"link"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"unsecured_connection_04.swift":{"fileName":"addLock.swift","highlights":[{"line":26},{"line":27},{"line":28},{"line":29},{"line":30},{"line":31}],"identifier":"unsecured_connection_04.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," let mobileId = result[\"id\"]!"," "," UserDefaults.standard.setValue(mobileId, forKey: \"TedeeMobileId\")"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"unsecured_connection_02.swift":{"fileName":"addLock.swift","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10}],"identifier":"unsecured_connection_02.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," }","}"]},"unsecured_connection_06.swift":{"fileName":"addLock.swift","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"identifier":"unsecured_connection_06.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() async -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activationCode)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"]},"serial_number_response.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/serial_number_response.png"}],"identifier":"serial_number_response.png","alt":"Serial number response","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"unsecured_connection_05.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"unsecured_connection_05.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\"","}"]}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},"kind":"project","hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"paths":["\/tutorials\/tedeelock\/unsecured-connection"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"category":"How to add Lock","categoryPathComponent":"how-to-add-lock","role":"project","title":"Unsecured Connection"},"sections":[{"kind":"hero","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}]}],"estimatedTimeInMinutes":10,"chapter":"Connect and get lock data","title":"Unsecured Connection"},{"kind":"tasks","tasks":[{"stepsSection":[{"media":null,"caption":[],"type":"step","content":[{"inlineContent":[{"text":"Configure your Personal Access Token.","type":"text"}],"type":"paragraph"}],"runtimePreview":null,"code":"unsecured_connection_01.swift"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Check if you already register mobile."}]}],"code":"unsecured_connection_02.swift","type":"step","media":null,"caption":[],"runtimePreview":null},{"runtimePreview":"mobile_registration.png","content":[{"inlineContent":[{"text":"Prepare and send request.","type":"text"}],"type":"paragraph"}],"caption":[],"type":"step","media":null,"code":"unsecured_connection_03.swift"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract mobile id from response and save it."}]}],"caption":[],"type":"step","media":null,"code":"unsecured_connection_04.swift","runtimePreview":null}],"title":"Registering mobile","contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"inlineContent":[{"type":"text","text":"To register mobile in Tedee API we need public key that the sdk is generating for you. Registration should done only once."}],"type":"paragraph"}]}],"anchor":"Registering-mobile"},{"stepsSection":[{"caption":[],"runtimePreview":null,"type":"step","media":null,"code":"unsecured_connection_05.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Configure activation code of your Tedee Pro or Tedee GO."}]}]},{"caption":[],"code":"unsecured_connection_06.swift","type":"step","content":[{"inlineContent":[{"text":"Prepare and send request.","type":"text"}],"type":"paragraph"}],"media":null,"runtimePreview":"serial_number_response.png"},{"content":[{"inlineContent":[{"type":"text","text":"Extract serial number from response"}],"type":"paragraph"}],"code":"unsecured_connection_07.swift","caption":[],"type":"step","media":null,"runtimePreview":null}],"title":"Serial number ","anchor":"Serial-number","contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"inlineContent":[{"text":"Serial number is required to make any connection to the lock. At this point we can get it from Tedee API by providing the activation code.","type":"text"}],"type":"paragraph"}]}]},{"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"With serial number, we can now connect to the lock.","type":"text"}]}]}],"stepsSection":[{"code":"unsecured_connection_08.swift","runtimePreview":null,"caption":[],"type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"By passing TedeeSerialNumber from previous section, we can made unsecured connection to the lock.","type":"text"}]}],"media":null}],"title":"Unsecured connection","anchor":"Unsecured-connection"}]},{"action":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"type":"reference","overridingTitle":"Get started"},"abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"kind":"callToAction","title":"Get Lock data","featuredEyebrow":"Tutorial"}],"references":{"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"unsecured_connection_05.swift":{"identifier":"unsecured_connection_05.swift","highlights":[],"fileType":"swift","type":"file","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\"","}"],"syntax":"swift","fileName":"addLock.swift"},"mobile_registration.png":{"type":"image","alt":"Mobile registration response","identifier":"mobile_registration.png","variants":[{"url":"\/images\/mobile_registration.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"unsecured_connection_08.swift":{"type":"file","syntax":"swift","fileType":"swift","fileName":"addLock.swift","highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func unsecuredConnection(serialNumber: TedeeSerialNumber) async {"," do {"," try await TedeeLockManager.shared.unsecureConnect(serialNumber)"," } catch {"," fatalError(\"Connection failure: \\(error)\")"," }"," }","}"],"identifier":"unsecured_connection_08.swift"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"serial_number_response.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/serial_number_response.png"}],"type":"image","alt":"Serial number response","identifier":"serial_number_response.png"},"unsecured_connection_01.swift":{"fileName":"addLock.swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\"","}"],"type":"file","highlights":[],"identifier":"unsecured_connection_01.swift","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"unsecured_connection_06.swift":{"fileName":"addLock.swift","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() async -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activationCode)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"type":"file","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"identifier":"unsecured_connection_06.swift","fileType":"swift","syntax":"swift"},"unsecured_connection_03.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"type":"file","highlights":[{"line":2},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25}],"identifier":"unsecured_connection_03.swift","fileType":"swift","syntax":"swift"},"unsecured_connection_02.swift":{"fileName":"addLock.swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," }","}"],"type":"file","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10}],"identifier":"unsecured_connection_02.swift","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"https://portal.tedee.com":{"titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"identifier":"https:\/\/portal.tedee.com","type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"unsecured_connection_07.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() await -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activatio)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return try! TedeeSerialNumber(serialNumber: result[\"serialNumber\"]!)"," }","}"],"type":"file","highlights":[{"line":2},{"line":7},{"line":8},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"identifier":"unsecured_connection_07.swift","fileType":"swift","syntax":"swift"},"unsecured_connection_04.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," let mobileId = result[\"id\"]!"," "," UserDefaults.standard.setValue(mobileId, forKey: \"TedeeMobileId\")"," }","}"],"type":"file","highlights":[{"line":26},{"line":27},{"line":28},{"line":29},{"line":30},{"line":31}],"identifier":"unsecured_connection_04.swift","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"}}} \ No newline at end of file diff --git a/TedeeLock.doccarchive/index/availability.index b/TedeeLock.doccarchive/index/availability.index index 03caa17e149b5844224354b29d0f07bf114d7779..1fcad050137fcea6082d76fc1a0bdf5067e8923e 100644 GIT binary patch delta 42 qcmcb{agAexDl?D2*(G5Sdj}w)p*h)*S&RqF78L^vYz}5-W&{8P{|d_h delta 42 scmcb{agAexDl?CU<|Sbfe={Iq?=abrS&T delta 44 zcmZo@;A;S)EsO#Uj1#u=H!x}1Pq*677&iUDenyGuGxjrTv|rfIxc$O@CW8Y2ZMG4g diff --git a/TedeeLock.doccarchive/metadata.json b/TedeeLock.doccarchive/metadata.json index d86f2ca..178d0e2 100644 --- a/TedeeLock.doccarchive/metadata.json +++ b/TedeeLock.doccarchive/metadata.json @@ -1 +1 @@ -{"bundleIdentifier":"TedeeLock","bundleDisplayName":"TedeeLock","schemaVersion":{"minor":1,"major":0,"patch":0}} \ No newline at end of file +{"bundleDisplayName":"TedeeLock","bundleIdentifier":"TedeeLock","schemaVersion":{"minor":1,"major":0,"patch":0}} \ No newline at end of file diff --git a/TedeeLock.xcframework/Info.plist b/TedeeLock.xcframework/Info.plist index d765711..8e36dec 100644 --- a/TedeeLock.xcframework/Info.plist +++ b/TedeeLock.xcframework/Info.plist @@ -6,9 +6,9 @@ BinaryPath - TedeeLock.framework/TedeeLock + TedeeLock.framework/Versions/A/TedeeLock LibraryIdentifier - ios-arm64_x86_64-simulator + macos-arm64_x86_64 LibraryPath TedeeLock.framework SupportedArchitectures @@ -17,38 +17,38 @@ x86_64 SupportedPlatform - ios - SupportedPlatformVariant - simulator + macos BinaryPath - TedeeLock.framework/Versions/A/TedeeLock + TedeeLock.framework/TedeeLock LibraryIdentifier - macos-arm64_x86_64 + ios-arm64 LibraryPath TedeeLock.framework SupportedArchitectures arm64 - x86_64 SupportedPlatform - macos + ios BinaryPath TedeeLock.framework/TedeeLock LibraryIdentifier - ios-arm64 + ios-arm64_x86_64-simulator LibraryPath TedeeLock.framework SupportedArchitectures arm64 + x86_64 SupportedPlatform ios + SupportedPlatformVariant + simulator CFBundlePackageType diff --git a/TedeeLock.xcframework/_CodeSignature/CodeDirectory b/TedeeLock.xcframework/_CodeSignature/CodeDirectory index 4f41d40743e3c7fdb8dd290036a1e581672c58db..e095e926887a9771d7fad3b8b7dada219a2584be 100644 GIT binary patch delta 87 zcmbQqIFoULXFw+F$=|L%6}gGJZ`l16C7+bP5h?q5cS!{M(ds=N(ni0l7FR4`SNs=X bQOwN9syx45R8Wj__0hMAORREQv55fyBHbcG delta 87 zcmbQqIFoULX8;4Myl{|-^Zumh>W7o=_XL!j-#YE*-6aw1N2~XANE`jGT3oS&UGZOl bG}{z)?wH>yAO3p>pRKzT_bq2fD>g9zqEsn& diff --git a/TedeeLock.xcframework/_CodeSignature/CodeRequirements-1 b/TedeeLock.xcframework/_CodeSignature/CodeRequirements-1 index c9117981cc2e329fcb2459c4602ebf8c7338c35e..593e38f0fd01a85b22222c9a4c2856376eee7505 100644 GIT binary patch delta 107 zcmX@fc#?5~r^0VW>9UC#GT|*h!Y^O9T+BUv=F=Y<9`%Xe-WOHB&vHFFF;l^zN$d5B kdsfK?b#)7T;}1V)xVkxrnT6wrQL~dv;nzK(rwPde0LpALO8@`> delta 107 zcmX@fc#?5~rvm@1J|_Qz%ha#_R6nk7{a5#Ad0zJR&&z*tO6YxG^*cX%Vy1$_uE^cD l7oFMSl6NC-M% diff --git a/TedeeLock.xcframework/_CodeSignature/CodeResources b/TedeeLock.xcframework/_CodeSignature/CodeResources index 754ff3f..10d268d 100644 --- a/TedeeLock.xcframework/_CodeSignature/CodeResources +++ b/TedeeLock.xcframework/_CodeSignature/CodeResources @@ -10,11 +10,11 @@ ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo - ugDvHdayke80kq0xXKgXpa2AhfA= + l267gTSb4izzMMrsiIdWxUAg+XE= ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios.abi.json - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios.private.swiftinterface @@ -34,7 +34,7 @@ ios-arm64/TedeeLock.framework/TedeeLock - oX7WillwCI+8ueaNqahfOfhs9JY= + U5cIY7q4gmi5Xp1R59129RGRX1o= ios-arm64_x86_64-simulator/TedeeLock.framework/Info.plist @@ -42,15 +42,15 @@ ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo - cLrv8I7D4siK5KoJ1McRlqoXsUc= + ycPLF6qmQJuYjLWLJqoIHkTI3xA= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo - Gp5rCM5dsF1W9kruQvVNshEWo3I= + /EvXi8jjq5JCWLmHYFsWwpfhaSw= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios-simulator.abi.json - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface @@ -70,7 +70,7 @@ ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/x86_64-apple-ios-simulator.abi.json - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface @@ -90,7 +90,7 @@ ios-arm64_x86_64-simulator/TedeeLock.framework/TedeeLock - 0x8G/e7qf4Aw1vOHMzXxnyzZilw= + wwVSscRWPA4VpGf1M+KPgWGpxB4= ios-arm64_x86_64-simulator/TedeeLock.framework/_CodeSignature/CodeResources @@ -98,15 +98,15 @@ macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/Project/arm64-apple-macos.swiftsourceinfo - W5MJ/ZyVrPkaXBBwyfDHycfMvSw= + 49MUh7GYPKhqt3DDWbpeOKckj5g= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/Project/x86_64-apple-macos.swiftsourceinfo - vQDPvmrn5y9UgKnhimSGxdWPmL0= + FONs7bjR7AXmbWYX5YG2dj0iZ6w= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/arm64-apple-macos.abi.json - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/arm64-apple-macos.private.swiftinterface @@ -126,7 +126,7 @@ macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/x86_64-apple-macos.abi.json - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/x86_64-apple-macos.private.swiftinterface @@ -150,7 +150,7 @@ macos-arm64_x86_64/TedeeLock.framework/Versions/A/TedeeLock - Le2KbO9UTheEbYNjqytId3DLmzg= + GdAivYXqD4S4JT4BAyN+5i0qswE= files2 @@ -170,22 +170,22 @@ hash - ugDvHdayke80kq0xXKgXpa2AhfA= + l267gTSb4izzMMrsiIdWxUAg+XE= hash2 - As/5obJza5ZlIZYsX8ZFofNvqDXbKNJIsa6hL0ihM0k= + 7TkrnPJCfcgMyoFMbyUZT1yAV8gMGrtGTO++GqMwQsc= ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios.abi.json hash - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= hash2 - Un2DtGXB7mIfexQHXj70O6KPNBnMmReWrcyG+FQu0DQ= + OdgZ6l6wO4sXOGrpFIgyeY5PjpOn7k+671PTs7cr1xM= ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios.private.swiftinterface @@ -236,11 +236,11 @@ hash - oX7WillwCI+8ueaNqahfOfhs9JY= + U5cIY7q4gmi5Xp1R59129RGRX1o= hash2 - G3+y0ixpdmuXz7H4UYr1vb5nLHRAslLJ1tp0SdHibok= + ClrmfIigfYZpFbsEVuphDCSPDtgQ2uAT/Ilv2d1dw9k= ios-arm64_x86_64-simulator/TedeeLock.framework/Info.plist @@ -258,33 +258,33 @@ hash - cLrv8I7D4siK5KoJ1McRlqoXsUc= + ycPLF6qmQJuYjLWLJqoIHkTI3xA= hash2 - 4YAqLUJFfMOMloe8W9+khb6otxX7qNa0t8cfoeNVSyw= + tapTJBNMD/2EYQLDddq8N6JQb43p4aArJMZbF52tNuo= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo hash - Gp5rCM5dsF1W9kruQvVNshEWo3I= + /EvXi8jjq5JCWLmHYFsWwpfhaSw= hash2 - PS8Nnvnj8zGKEsnWAozCBT/+87UyTEPjNtzGkaikIRw= + P7f/2r7r9hFuWawgKgTubv9cTCCcyVn3p0u/ZNASr3o= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios-simulator.abi.json hash - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= hash2 - Un2DtGXB7mIfexQHXj70O6KPNBnMmReWrcyG+FQu0DQ= + OdgZ6l6wO4sXOGrpFIgyeY5PjpOn7k+671PTs7cr1xM= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface @@ -335,11 +335,11 @@ hash - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= hash2 - Un2DtGXB7mIfexQHXj70O6KPNBnMmReWrcyG+FQu0DQ= + OdgZ6l6wO4sXOGrpFIgyeY5PjpOn7k+671PTs7cr1xM= ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface @@ -390,11 +390,11 @@ hash - 0x8G/e7qf4Aw1vOHMzXxnyzZilw= + wwVSscRWPA4VpGf1M+KPgWGpxB4= hash2 - 0tmrsITpolKL7cN7cGaIGWxDL0qRTk+cTvLfnBgKJAc= + as8oDQTUGSB3Sli/64IYZiRKseS5TC5pMNUkrlIJz5g= ios-arm64_x86_64-simulator/TedeeLock.framework/_CodeSignature/CodeResources @@ -427,33 +427,33 @@ hash - W5MJ/ZyVrPkaXBBwyfDHycfMvSw= + 49MUh7GYPKhqt3DDWbpeOKckj5g= hash2 - 3GwtUnJDioG9f/Nad58wzil+2SmFeUwiTA8d3FRXdHw= + 7IONZmhi2D33UjtLLpYQKNWBTAjW3t7knH/8kFHdi+c= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/Project/x86_64-apple-macos.swiftsourceinfo hash - vQDPvmrn5y9UgKnhimSGxdWPmL0= + FONs7bjR7AXmbWYX5YG2dj0iZ6w= hash2 - lhjzmh36FjEmLL/D37KnY3CVpllOBc6CNw8H2eoN0qU= + GDfF9aC1w+ZD+4ckvm8QOp2jAcuTzdYze2y1gt3tdys= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/arm64-apple-macos.abi.json hash - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= hash2 - Un2DtGXB7mIfexQHXj70O6KPNBnMmReWrcyG+FQu0DQ= + OdgZ6l6wO4sXOGrpFIgyeY5PjpOn7k+671PTs7cr1xM= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/arm64-apple-macos.private.swiftinterface @@ -504,11 +504,11 @@ hash - QNc6/hvRH1OwLMCBWUxqXHe1JW4= + sUqp97ruO6+dmHeLO7PcmJ8vsKQ= hash2 - Un2DtGXB7mIfexQHXj70O6KPNBnMmReWrcyG+FQu0DQ= + OdgZ6l6wO4sXOGrpFIgyeY5PjpOn7k+671PTs7cr1xM= macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/x86_64-apple-macos.private.swiftinterface @@ -570,11 +570,11 @@ hash - Le2KbO9UTheEbYNjqytId3DLmzg= + GdAivYXqD4S4JT4BAyN+5i0qswE= hash2 - 4SqyThnxlb95d3j94uTNQhLj+NQG4MtnVoV7/7Ri0z8= + UZWFKXcghurApo6nkQHbt8vPMTmj8eif4r8jfsvCSPE= macos-arm64_x86_64/TedeeLock.framework/Versions/Current diff --git a/TedeeLock.xcframework/_CodeSignature/CodeSignature b/TedeeLock.xcframework/_CodeSignature/CodeSignature index df965cf41c3808496cb9f293140d05b3b60d82c6..d148879ed5950ea00e58f3476c35b78962e8b58b 100644 GIT binary patch delta 512 zcmV+b0{{JoCWj`l_YZ$KF)}eVGBz?XS}-pL2`Yw2hW8Bt2?Q}B1R!h#Sdvlp)oZFT z7N*XY=vJ4#u=6^%)mK2`5E~)rxxz481_>&LNQU=gWC;Q>PB0w?1uG5%0vZGq#Ihzc zsYw@&d_1Q0tw(&s;C?pmFf9fNV1`HmWdj5P0R$kode2_E{reeM=)9<{X{}{G?;QqC zKt80%kQVg-6z>oJlaCPVO?XU6ZA~_8N=7s>I8aMsF>+O8ICxJ&D^7JdJqig4JTGKn zbYVUU2?;!8VRT_W3JD2xGjdQ^a&kEFRQyEI@Y-?}}74m<~Fjo~B;OxZTa}ZF`(7hsi}-$#zL&#Rnmo+nAOg-u=3|)S=}} zqPD2D?}*%?5kEN%)E%HKXb-g{)HVV^!EoL_CR}_VCPWi-S(QU%F40}fT9Q)~1?)#H z72^zG_JwT=iZ+f_t^Xe$6Y773^`DXv>}d-^af>+_o)=yB&z4PIkHPwP5l?kTCnGGz zsP|{K&one@w$RNhb0k0r%*Czi=JCn$5p%s~<=k)fOI3)%8Dg`R!TAcI0;$mEc_-`5 zl#!4PO?Z!2v??GJDycbDH~+TEkc9x;9LxQ?VN{t6WrfsyG;@TdI(7*CAOHXW0000U C*VWJf delta 512 zcmV+b0{{JoCWj`l_YZ$JFfuSWGcYqWS}-pL2`Yw2hW8Bt2?Q}B1R%)mhvSoNmHXDW zX+6oadNCG(+hI)Q$i3%!yEvUi2}v+p1_>&LNQU=gWC;Q>PB0w?1uG5%0vZGq;D_zG z#SHWq`E~ZPjOPhS;xb}ZFf9fNV1`HmWdj5P0R$iy_P-*WKmHjg{16KYigP?d0A{(Jqig4JTGKn zbYVUU2?;!8VRT_W3JD2DFJUi9aCa{+X=*q{L32xKHBwGEadl2_OE{Cq5juY`o-v(6 zMrh76Ihj-qi?wPK5FiE&-3r#~rH!g-cH+*`+{D!5?<_=u0ey1g?)G7*u(Gnz{cF;^ zdvY|sPa^)Ux2-|0T!}ucdch05Sj@z$**2|oZ{NQtKs`l~a+br3p=;D`vNPK`+S`>U zeHDKm9ep5?+%htNfoj|0?WTV+3DQ-#?UlkG?h&$1LLVk9GOV%wcVTdgvnr%n-&3#r zuWsOB2v3ojyRYVawE-P{qr{gkpt&XFO26ceyjE-k7saJUiM$L};XKQ_;K8f;;Fl%Y z<>PgD86ZZ_qFyA5FKa*k{B@$5g1@;x5)V=2-SOtqONB%vjM@kA{(=a4kpKVy00029 Cvf%Cj diff --git a/TedeeLock.xcframework/ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo b/TedeeLock.xcframework/ios-arm64/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo index 06cd122c2a8dd5fee0d30c1aa8f7b409483422e1..d2da20efb7be5ed6fcb44ae1fccc89be42f31930 100644 GIT binary patch delta 1165 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
Kq_jxVwU+`L{NbbE_t50h>%W6IFVN2I^mehC} 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 U|E9>DU|N;Aqx{9ayjxfQ3nshml>h($ literal 1307984 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 o;MO5LBw38$M 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

Lt`|E`)2ziQS<;$a`2{E`}S)#XilImF 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

  • 1^Mhi*r<>yhaR7aNALs1X~6 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 WwL_Ks(A|~8QlYeaA-6`?6KY0J8Vqg# literal 2623584 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

    )s9pwME(crQH<+A9 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⋘?On)#3=T)m1_kHD_ktKp=LA+&_J>F+@9o@XacTO>$MlCNhg1ozn&FB@a5y z>Y_dRnkV{_cCo1SQ`?0LqXN zcxE7$@|e9GsZ0?fZtR9$lxjp>oMlZyotb|#I-{?q8VBN&@>6hGa)CTk#mr)t1M*gc z9QyrTzrRy| zMPB`fJ96bM=vkNFhp>Hf=yR+np4Yx5n{oUB)c(^SoAKS2*Zu+Zr{vXt3hP?x?uv~bxzMend1IG6}#dF~2%x|OSxB8!Eevjp~ zH#@IAL;oi_ae}MUA;YR}GUw{OKr-(Pr&wVNr3^uowjv20%o$Nad)a#H-Zyz+0-or4 zMrz*(Toho<$tLoA)BYh>>pCqa9_3qJ>(rc8lGb{Iu6p$yL6O8i)K z>g4)G#8NVFtY!Hdo$4mv%8;b4UaQWd{xhn7t?DD#Wb1#D%+wd@SAEkC^^?RA9kKQ- zjonvHX*sJ`xf)fAH9OS=T%$Wia^#QP`1Nb*s3bgIlR7Y3qs=E zB}rlu%wizB?Bg>7Ayh(UAQKK8$PPPb27(W&kuP%3-hi)aE2-jh#uSWCBm7EY_H+fp zU^v@AD*A2BYAUkEaAG*fG#!64AZ5z$AItg>L568#Z{Y_fc_W0; zMhD~^J940q=u0V1UhT3ov{$GKh|41PlSLrv`pThPBA(0-0R1t)AAMNrdxzIAw++fL zV=wPE*w67BQ43|r79fK<_znAl-aRA<=k(aEzC!0=SSqHPd+l4XnULDSUv`aa{>8$( zp$v;5dDz=?1A47o%2gZOuS!c#y?mA*Q8i%W}k+p$q1#>XI;`pq8Tg9F^@oo?LI4L?%S5h?pY~p?Xx16Bmc?0qXYz8tLbjFd zR=y@HKw3f5rSAnUH0gOQkrR21{1l|IDH~h8Hr5is?c5gIlQ9Nk6R)@b$=wN9$Dv>T z!XZwWIDleW5Pg9I17~!}A#}R`bcCv!{XOO%OSc<%>N)RpI;)y(Y-T-)8$dB*`+Aig zbPqI9#j92)E=qsF;8R!GRm80|feoF47;DM)g)V+h7c#befjiE-QXjcCr!A|l$SE?H zB8eW(^KGVhVj{m%+bicjRQ{V2>CC$Sw*ZZU5Bfy$rJxHb{!FC!P&vtTFvNXGpUYaS zuOzslQAid#3vN6IS94pW{zIdLp?PY{r;>?%P2U1 zI9%6Q`$BESF°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

    n0a*_lwyha&?p1?>ySNzD?fWw>@v5wdM%j zB=*1J`!6Y9^8Yb-Z#Z&nHS@@F?D{104&1N#v!k>0>mpBMZ?v|&=#av?A3NdlDkpsM zAt(GrP0^vAw^>{JBPX6gru?zo+WKmGy>H2=z+&IB-tNE&U%){pV@#PWb14ygT8C!2uH{hI*&W3Jyr= z9Xx)*W!;yio-y*T6VAByuM@z(`(@`x)^5QM<;*}&p5u6W@EqU$ocdg4ZIQ#dXJ^1Nh_m92{D}6C^GB!mu4xs~O9O@oJ2dZ%>q_~la z!@hl_6BpIkbhhHqy`D`R<4}mW`ft1X({Eer8V5((jYCJCANKS)sdK;CIOHF9M2lDN zb;cy|jsM@#-a9+PQO22zWc=orv!*{D8f*Pq1&_YQI;)U%|3l{7La=!z-va|l&8HFO zb0*>P6H2xhGLP8A|9PBo;LLFIOy*hg>zhxQUp8a(C7?5Pv=>R>|B5h~p^f4|F|C7cfbR1F{< z`;CRFs|iU*cy`(J(XSw9heNjpLg@>n`_!JL^e|ep$@hc&_(*q?PrB!ikuHZcE02;! zd)7~N@*f8%X+Q7apVn_bZ5Q8-xP`tr*@6AU{mw;3u*b^7S-(IAPdX20=mN5JNVJJN z_`O%nU6e=T!K3{PM?+h~X&V=E-`n1Lc+t!k)_=Pu8(#_1fk%;<3d7&fMycsuM>j3q zp7;JCah|@_)35sNI;1C$x;9GhnzTpT6L9RI{@^Red*9YUIY-(~TXs5k`!e@?Q~LI2 zgNK&{c+auA*1UHg^G4S1^^DQ7v8`lI{c@HyYa{e2^Yqx|!J3h-zs3ywwp8}OH+GjR zw>xx0GJWLN67*k$ukOj4gY>c`@^J z%~RW-XFry{`Ez8`LGtOmmDZ-8vNmmT_fZ$U!dOgwoHMr2lEW|70*8hZ9IPt`QRZv$c7%m3!e^rPku5|a5-`M z{xRQ|qi>1k>A))4LwFMx08;TjpfNNqa$98j(Ck_ zt$7^$uSi8doEv{ZGDf=Ldi(*F>_SJ3j#9eM�%?`I1GSp+}FS$Cp0wfYA@9H*1dJ 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 z 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 z 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≷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 diff --git a/TedeeLock.xcframework/macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/Project/arm64-apple-macos.swiftsourceinfo b/TedeeLock.xcframework/macos-arm64_x86_64/TedeeLock.framework/Versions/A/Modules/TedeeLock.swiftmodule/Project/arm64-apple-macos.swiftsourceinfo index c68af9e9ca2a31ac3568d840163198b0f9e329b5..3c92dee5a8f544b3fa08c5460354d2b7927a4fc9 100644 GIT binary patch delta 1191 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�S7sJe#}Ufdr4U-07ubM*swkk*6+!SuRX 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ⓈKXUI!-w=1}Z>w$S(4?IimBQGZp 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 Wq*GV5e?H!`R=fUPksBi^YybeE9*0x_ delta 825537 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 cOq?qbswa_$Uq2Vsfc4d&G)!vK9MyF|% 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

    b|U5^eEciGt;2F!XDd0{I>4 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

    ` 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

    R5evlN6hS2M*Q6oAa#x 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 KigktSBme-V7FGfP diff --git a/docs/data/documentation/tedeelock.json b/docs/data/documentation/tedeelock.json index 5fcd296..cf09fc1 100644 --- a/docs/data/documentation/tedeelock.json +++ b/docs/data/documentation/tedeelock.json @@ -1 +1 @@ -{"hierarchy":{"paths":[[]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock"]}],"metadata":{"externalID":"TedeeLock","role":"collection","roleHeading":"Framework","title":"TedeeLock","symbolKind":"module","modules":[{"name":"TedeeLock"}]},"abstract":[{"type":"text","text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol."}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock"},"primaryContentSections":[{"content":[{"text":"Overview","anchor":"Overview","type":"heading","level":2},{"type":"heading","anchor":"Features","text":"Features","level":3},{"type":"unorderedList","items":[{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"Effortless Integration"}]},{"text":": Incorporate Tedee lock functionality into your iOS applications seamlessly.","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"Full Control"}]},{"text":": Communicate with and operate Tedee locks, including ","type":"text"},{"isActive":true,"identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/","type":"reference"},{"text":" and ","type":"text"},{"identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","type":"reference","isActive":true},{"type":"text","text":", with comprehensive control options."}]}]},{"content":[{"inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"Efficient Communication"}]},{"type":"text","text":": Utilize Bluetooth Low Energy (BLE) for efficient device interaction, ensuring optimal performance and minimal energy consumption."}],"type":"paragraph"}]}]},{"level":3,"text":"Credits","type":"heading","anchor":"Credits"},{"inlineContent":[{"type":"text","text":"This product includes software developed by the “Marcin Krzyzanowski” ("},{"type":"reference","identifier":"http:\/\/krzyzanowskim.com\/","isActive":true},{"text":").","type":"text"}],"type":"paragraph"}],"kind":"content"}],"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"],"title":"Tutorials"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock"],"title":"Articles"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"],"title":"Classes"},{"title":"Protocols","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]},{"title":"Structures","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"http://krzyzanowskim.com/":{"type":"link","title":"http:\/\/krzyzanowskim.com\/","url":"http:\/\/krzyzanowskim.com\/","titleInlineContent":[{"type":"text","text":"http:\/\/krzyzanowskim.com\/"}],"identifier":"http:\/\/krzyzanowskim.com\/"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"https://tedee.com/product-info/tedee-go-best-keyless-access/":{"url":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","titleInlineContent":[{"type":"text","text":"Tedee GO"}],"title":"Tedee GO","type":"link","identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"https://tedee.com/product-info/tedee-pro/":{"type":"link","title":"Tedee PRO","url":"https:\/\/tedee.com\/product-info\/tedee-pro\/","titleInlineContent":[{"type":"text","text":"Tedee PRO"}],"identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"content","content":[{"anchor":"Overview","text":"Overview","level":2,"type":"heading"},{"anchor":"Features","level":3,"type":"heading","text":"Features"},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"inlineContent":[{"type":"text","text":"Effortless Integration"}],"type":"strong"},{"text":": Incorporate Tedee lock functionality into your iOS applications seamlessly.","type":"text"}]}]},{"content":[{"inlineContent":[{"type":"strong","inlineContent":[{"text":"Full Control","type":"text"}]},{"text":": Communicate with and operate Tedee locks, including ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/"},{"text":" and ","type":"text"},{"type":"reference","identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","isActive":true},{"type":"text","text":", with comprehensive control options."}],"type":"paragraph"}]},{"content":[{"inlineContent":[{"type":"strong","inlineContent":[{"text":"Efficient Communication","type":"text"}]},{"text":": Utilize Bluetooth Low Energy (BLE) for efficient device interaction, ensuring optimal performance and minimal energy consumption.","type":"text"}],"type":"paragraph"}]}],"type":"unorderedList"},{"type":"heading","level":3,"anchor":"Credits","text":"Credits"},{"type":"paragraph","inlineContent":[{"type":"text","text":"This product includes software developed by the “Marcin Krzyzanowski” ("},{"identifier":"http:\/\/krzyzanowskim.com\/","isActive":true,"type":"reference"},{"type":"text","text":")."}]}]}],"hierarchy":{"paths":[[]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"],"title":"Tutorials"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock"],"title":"Articles"},{"title":"Classes","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]},{"title":"Protocols","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]},{"title":"Structures","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"],"title":"Enumerations"}],"sections":[],"metadata":{"title":"TedeeLock","externalID":"TedeeLock","modules":[{"name":"TedeeLock"}],"symbolKind":"module","roleHeading":"Framework","role":"collection"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock"},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"https://tedee.com/product-info/tedee-go-best-keyless-access/":{"url":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","type":"link","identifier":"https:\/\/tedee.com\/product-info\/tedee-go-best-keyless-access\/","title":"Tedee GO","titleInlineContent":[{"text":"Tedee GO","type":"text"}]},"https://tedee.com/product-info/tedee-pro/":{"url":"https:\/\/tedee.com\/product-info\/tedee-pro\/","type":"link","identifier":"https:\/\/tedee.com\/product-info\/tedee-pro\/","titleInlineContent":[{"type":"text","text":"Tedee PRO"}],"title":"Tedee PRO"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"http://krzyzanowskim.com/":{"url":"http:\/\/krzyzanowskim.com\/","type":"link","identifier":"http:\/\/krzyzanowskim.com\/","title":"http:\/\/krzyzanowskim.com\/","titleInlineContent":[{"text":"http:\/\/krzyzanowskim.com\/","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/how-to-connect-to-the-lock.json b/docs/data/documentation/tedeelock/how-to-connect-to-the-lock.json index 1e37103..323f55a 100644 --- a/docs/data/documentation/tedeelock/how-to-connect-to-the-lock.json +++ b/docs/data/documentation/tedeelock/how-to-connect-to-the-lock.json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/how-to-connect-to-the-lock"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"],["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"content","content":[{"type":"heading","text":"Overview","anchor":"Overview","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":"Before you are able to connect with Lock, you need to be able to comunicate with Tedee API and setup required data presented below."}]},{"anchor":"Mobile-Registration","level":3,"text":"Mobile Registration","type":"heading"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Each instance of the application for each user must be registered in Tedee API. To do that, this sdk generates "},{"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","isActive":true},{"type":"text","text":" which shouldn’t change until user will delete and reinstall the application."}]},{"type":"orderedList","items":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Obtain publicKey."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Register mobile by calling ","type":"text"},{"type":"reference","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","isActive":true},{"text":" endpoint.","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Save received id, it will be needed in next section."}]}]}]},{"level":3,"type":"heading","anchor":"Certificate","text":"Certificate"},{"type":"paragraph","inlineContent":[{"text":"Certificate is required to establish secure bluetooth connection with the Lock. Certificate is issued for specific lock and mobile. To request certificate you need to have id (mobile id) that you received in previous section and device id of the lock that can from ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks"},{"type":"text","text":"."}]},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Request certificate from ","type":"text"},{"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","type":"reference","isActive":true},{"text":".","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Save the response until the certificate expire.","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Create "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","isActive":true,"type":"reference"},{"type":"text","text":" object from received certificate."}]}]}],"type":"orderedList"},{"anchor":"Connection","text":"Connection","level":3,"type":"heading"},{"items":[{"content":[{"inlineContent":[{"type":"text","text":"Invoke"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","type":"reference","isActive":true},{"type":"text","text":" method with "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":" and ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","isActive":true,"type":"reference"},{"type":"text","text":"."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","type":"reference","isActive":true},{"type":"text","text":" will try to find and establish secure connection with the lock for up to 30 sec."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"If connection was unsuccessful or lock was outside of the BLE range, "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","isActive":true,"type":"reference"},{"type":"text","text":" will return appropriate error."}]}]}],"type":"orderedList"},{"type":"heading","level":3,"anchor":"Example-app","text":"Example app"},{"inlineContent":[{"type":"text","text":"Complete example app can be found "},{"type":"reference","isActive":true,"identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios"}],"type":"paragraph"}]}],"metadata":{"role":"article","title":"How to connect to the Lock?","modules":[{"name":"TedeeLock"}],"roleHeading":"Article"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"https://github.com/tedee-com/tedee-example-ble-ios":{"url":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","title":"here","identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","titleInlineContent":[{"type":"text","text":"here"}],"type":"link"},"https://api.tedee.com/swagger/index.html#/Mobile/PostMobile":{"url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","title":"\/my\/mobile","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","titleInlineContent":[{"text":"\/my\/mobile","type":"text"}],"type":"link"},"https://api.tedee.com/swagger/index.html#/DeviceCertificate/GetCertificateForMobile":{"titleInlineContent":[{"type":"text","text":"\/my\/devicecertificate\/getformobile"}],"url":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","title":"\/my\/devicecertificate\/getformobile","type":"link","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"https://api.tedee.com/swagger/index.html#/Lock/GetAllLocks":{"type":"link","titleInlineContent":[{"text":"\/my\/lock","type":"text"}],"title":"\/my\/lock","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock"},"metadata":{"modules":[{"name":"TedeeLock"}],"title":"How to connect to the Lock?","role":"article","roleHeading":"Article"},"variants":[{"paths":["\/documentation\/tedeelock\/how-to-connect-to-the-lock"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"primaryContentSections":[{"kind":"content","content":[{"type":"heading","text":"Overview","level":2,"anchor":"Overview"},{"inlineContent":[{"text":"Before you are able to connect with Lock, you need to be able to comunicate with Tedee API and setup required data presented below.","type":"text"}],"type":"paragraph"},{"type":"heading","text":"Mobile Registration","level":3,"anchor":"Mobile-Registration"},{"inlineContent":[{"type":"text","text":"Each instance of the application for each user must be registered in Tedee API. To do that, this sdk generates "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","isActive":true,"type":"reference"},{"type":"text","text":" which shouldn’t change until user will delete and reinstall the application."}],"type":"paragraph"},{"type":"orderedList","items":[{"content":[{"inlineContent":[{"type":"text","text":"Obtain publicKey."}],"type":"paragraph"}]},{"content":[{"inlineContent":[{"text":"Register mobile by calling ","type":"text"},{"type":"reference","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","isActive":true},{"type":"text","text":" endpoint."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Save received id, it will be needed in next section.","type":"text"}]}]}]},{"type":"heading","anchor":"Certificate","text":"Certificate","level":3},{"type":"paragraph","inlineContent":[{"text":"Certificate is required to establish secure bluetooth connection with the Lock. Certificate is issued for specific lock and mobile. To request certificate you need to have id (mobile id) that you received in previous section and device id of the lock that can from ","type":"text"},{"isActive":true,"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks","type":"reference"},{"type":"text","text":"."}]},{"type":"orderedList","items":[{"content":[{"inlineContent":[{"text":"Request certificate from ","type":"text"},{"isActive":true,"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","type":"reference"},{"type":"text","text":"."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Save the response until the certificate expire."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Create ","type":"text"},{"isActive":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"reference"},{"type":"text","text":" object from received certificate."}]}]}]},{"level":3,"type":"heading","text":"Connection","anchor":"Connection"},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Invoke","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","isActive":true,"type":"reference"},{"type":"text","text":" method with "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"type":"text","text":" and "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"},{"text":".","type":"text"}]}]},{"content":[{"inlineContent":[{"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","isActive":true},{"text":" will try to find and establish secure connection with the lock for up to 30 sec.","type":"text"}],"type":"paragraph"}]},{"content":[{"inlineContent":[{"text":"If connection was unsuccessful or lock was outside of the BLE range, ","type":"text"},{"isActive":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","type":"reference"},{"type":"text","text":" will return appropriate error."}],"type":"paragraph"}]}],"type":"orderedList"},{"text":"Example app","type":"heading","level":3,"anchor":"Example-app"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Complete example app can be found "},{"identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","isActive":true,"type":"reference"}]}]}],"kind":"article","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"],["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"https://api.tedee.com/swagger/index.html#/DeviceCertificate/GetCertificateForMobile":{"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/DeviceCertificate\/GetCertificateForMobile","title":"\/my\/devicecertificate\/getformobile","titleInlineContent":[{"text":"\/my\/devicecertificate\/getformobile","type":"text"}],"type":"link"},"https://api.tedee.com/swagger/index.html#/Lock/GetAllLocks":{"titleInlineContent":[{"type":"text","text":"\/my\/lock"}],"title":"\/my\/lock","type":"link","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks","identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Lock\/GetAllLocks"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"https://api.tedee.com/swagger/index.html#/Mobile/PostMobile":{"identifier":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","url":"https:\/\/api.tedee.com\/swagger\/index.html#\/Mobile\/PostMobile","title":"\/my\/mobile","titleInlineContent":[{"text":"\/my\/mobile","type":"text"}],"type":"link"},"https://github.com/tedee-com/tedee-example-ble-ios":{"titleInlineContent":[{"type":"text","text":"here"}],"title":"here","type":"link","url":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios","identifier":"https:\/\/github.com\/tedee-com\/tedee-example-ble-ios"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock.json b/docs/data/documentation/tedeelock/tedeeaddlock.json index a0a2660..1207ce3 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"},"metadata":{"role":"symbol","symbolKind":"struct","navigatorTitle":[{"text":"TedeeAddLock","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeAddLock","roleHeading":"Structure","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeAddLock","kind":"identifier"}],"externalID":"s:9TedeeLock0a3AddB0V"},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone"]}],"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"relationshipsSections":[{"type":"conformsTo","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/SE"],"kind":"relationships"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"role":"symbol","abstract":[],"title":"activationCode","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"activationCode","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","title":"timeZone","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","title":"softwareVersions","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"softwareVersions","kind":"identifier"},{"kind":"text","text":": ["},{"text":"TedeeSoftwareVersion","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":"?","kind":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","title":"organizationId","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","title":"signature"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","kind":"symbol","type":"topic","title":"deviceSettings","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","role":"symbol"},"doc://TedeeLock/SE":{"title":"Swift.Encodable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","title":"name","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/name","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"title":"serialNumber","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","kind":"symbol","type":"topic","title":"revision","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","role":"symbol"}}} \ No newline at end of file +{"metadata":{"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeAddLock"}],"symbolKind":"struct","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Structure","title":"TedeeAddLock","externalID":"s:9TedeeLock0a3AddB0V","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}]},"schemaVersion":{"minor":3,"patch":0,"major":0},"relationshipsSections":[{"type":"conformsTo","kind":"relationships","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/SE"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone"]}],"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","type":"topic","role":"symbol","title":"revision"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/SE":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"timeZone"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","type":"topic","role":"symbol","title":"timeZone"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","title":"activationCode"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","title":"softwareVersions"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"organizationId"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":"?","kind":"text"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","title":"organizationId"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/name","title":"name"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","title":"signature"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceSettings"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","title":"deviceSettings","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/activationcode.json b/docs/data/documentation/tedeelock/tedeeaddlock/activationcode.json index 2b8aaa9..9c0b20b 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/activationcode.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/activationcode.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"platforms":["macOS"],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/activationcode"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"metadata":{"externalID":"s:9TedeeLock0a3AddB0V14activationCodeSSvp","title":"activationCode","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"activationCode","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol"},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"role":"symbol","abstract":[],"title":"activationCode","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"activationCode","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/activationcode"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"activationCode","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode"},"metadata":{"title":"activationCode","roleHeading":"Instance Property","externalID":"s:9TedeeLock0a3AddB0V14activationCodeSSvp","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"symbolKind":"property","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/activationCode":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"activationCode"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/activationCode","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/activationcode","title":"activationCode"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/devicesettings.json b/docs/data/documentation/tedeelock/tedeeaddlock/devicesettings.json index e936406..89f369a 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/devicesettings.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/devicesettings.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"kind":"text","text":": "},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/devicesettings"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"kind":"symbol","metadata":{"modules":[{"name":"TedeeLock"}],"title":"deviceSettings","symbolKind":"property","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"kind":"text","text":": "},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"externalID":"s:9TedeeLock0a3AddB0V14deviceSettingsAA0a6DeviceE0Vvp","roleHeading":"Instance Property"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","kind":"symbol","type":"topic","title":"deviceSettings","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"externalID":"s:9TedeeLock0a3AddB0V14deviceSettingsAA0a6DeviceE0Vvp","title":"deviceSettings","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"deviceSettings","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","text":"TedeeDeviceSettings"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/devicesettings"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/deviceSettings":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceSettings"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeeaddlock\/devicesettings","title":"deviceSettings","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/deviceSettings","role":"symbol","kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/name.json b/docs/data/documentation/tedeelock/tedeeaddlock/name.json index b9fa134..f9b8b8b 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/name.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/name.json @@ -1 +1 @@ -{"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"name","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"metadata":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"title":"name","symbolKind":"property","externalID":"s:9TedeeLock0a3AddB0V4nameSSvp","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/name"]}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","title":"name","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/name","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"title":"name","role":"symbol","externalID":"s:9TedeeLock0a3AddB0V4nameSSvp","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"symbolKind":"property","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/name"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/name":{"kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/name","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/name","title":"name"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/organizationid.json b/docs/data/documentation/tedeelock/tedeeaddlock/organizationid.json index 5e16ace..d4cdd67 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/organizationid.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/organizationid.json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/organizationid"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","interfaceLanguage":"swift"},"metadata":{"symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","title":"organizationId","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"externalID":"s:9TedeeLock0a3AddB0V14organizationIdSiSgvp","role":"symbol"},"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"organizationId","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":"?"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":"?","kind":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","title":"organizationId","kind":"symbol","role":"symbol","abstract":[]}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0a3AddB0V14organizationIdSiSgvp","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"organizationId","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":"?"}],"symbolKind":"property","roleHeading":"Instance Property","title":"organizationId","modules":[{"name":"TedeeLock"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"organizationId"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"kind":"text","text":"?"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/organizationid"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/organizationId":{"kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"organizationId"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":"?","kind":"text"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/organizationId","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/organizationid","title":"organizationId"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/revision.json b/docs/data/documentation/tedeelock/tedeeaddlock/revision.json index 047041c..65184fc 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/revision.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/revision.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/revision"]}],"metadata":{"roleHeading":"Instance Property","symbolKind":"property","title":"revision","externalID":"s:9TedeeLock0a3AddB0V8revisionSivp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}]},"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","kind":"symbol","type":"topic","title":"revision","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","symbolKind":"property","externalID":"s:9TedeeLock0a3AddB0V8revisionSivp","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"title":"revision"},"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/revision"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/revision":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"revision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/revision","type":"topic","role":"symbol","title":"revision"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/serialnumber.json b/docs/data/documentation/tedeelock/tedeeaddlock/serialnumber.json index 785a8b9..a710108 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/serialnumber.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/serialnumber.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/serialnumber"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"kind":"symbol","sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:9TedeeLock0a3AddB0V12serialNumberSSvp","roleHeading":"Instance Property","symbolKind":"property","title":"serialNumber"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"title":"serialNumber","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0a3AddB0V12serialNumberSSvp","title":"serialNumber","roleHeading":"Instance Property","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","interfaceLanguage":"swift"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/serialNumber":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/serialNumber","url":"\/documentation\/tedeelock\/tedeeaddlock\/serialnumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/signature.json b/docs/data/documentation/tedeelock/tedeeaddlock/signature.json index da3b786..8b62900 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/signature.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/signature.json @@ -1 +1 @@ -{"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"metadata":{"externalID":"s:9TedeeLock0a3AddB0V9signatureSSvp","symbolKind":"property","title":"signature","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/signature"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","title":"signature"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/signature"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"title":"signature","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"externalID":"s:9TedeeLock0a3AddB0V9signatureSSvp","roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/signature":{"kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/signature","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/signature","title":"signature"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/softwareversions.json b/docs/data/documentation/tedeelock/tedeeaddlock/softwareversions.json index 5a8be1f..76dec18 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/softwareversions.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/softwareversions.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"softwareVersions","kind":"identifier"},{"kind":"text","text":": ["},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}]}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/softwareversions"]}],"sections":[],"metadata":{"symbolKind":"property","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"title":"softwareVersions","externalID":"s:9TedeeLock0a3AddB0V16softwareVersionsSayAA0A15SoftwareVersionVGvp","roleHeading":"Instance Property"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","title":"softwareVersions","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"softwareVersions","kind":"identifier"},{"kind":"text","text":": ["},{"text":"TedeeSoftwareVersion","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/softwareversions"]}],"sections":[],"metadata":{"symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0a3AddB0V16softwareVersionsSayAA0A15SoftwareVersionVGvp","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion","kind":"typeIdentifier"},{"kind":"text","text":"]"}],"title":"softwareVersions"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/softwareVersions":{"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareVersions"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion"},{"kind":"text","text":"]"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/softwareVersions","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/softwareversions","title":"softwareVersions"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeaddlock/timezone.json b/docs/data/documentation/tedeelock/tedeeaddlock/timezone.json index 0130b86..9db8bc3 100644 --- a/docs/data/documentation/tedeelock/tedeeaddlock/timezone.json +++ b/docs/data/documentation/tedeelock/tedeeaddlock/timezone.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","interfaceLanguage":"swift"},"kind":"symbol","sections":[],"metadata":{"symbolKind":"property","role":"symbol","externalID":"s:9TedeeLock0a3AddB0V8timeZoneSSvp","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"timeZone","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeaddlock\/timezone"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","title":"timeZone","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","interfaceLanguage":"swift"},"metadata":{"externalID":"s:9TedeeLock0a3AddB0V8timeZoneSSvp","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"timeZone","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"roleHeading":"Instance Property","symbolKind":"property","modules":[{"name":"TedeeLock"}],"title":"timeZone","role":"symbol"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeaddlock\/timezone"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock/timeZone":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"timeZone"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"kind":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeaddlock\/timezone","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock\/timeZone","type":"topic","role":"symbol","title":"timeZone"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate.json b/docs/data/documentation/tedeelock/tedeecertificate.json index 6b95b57..9334093 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate.json +++ b/docs/data/documentation/tedeelock/tedeecertificate.json @@ -1 +1 @@ -{"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate"]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"TedeeCertificate","externalID":"s:9TedeeLock0A11CertificateV","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeCertificate"}],"roleHeading":"Structure","symbolKind":"struct","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"role":"symbol","modules":[{"name":"TedeeLock"}]},"relationshipsSections":[{"kind":"relationships","title":"Conforms To","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/s8SendableP"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","title":"certificate","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"}],"role":"symbol","type":"topic","kind":"symbol","abstract":[],"title":"expirationDate","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"},"doc://TedeeLock/s8SendableP":{"identifier":"doc:\/\/TedeeLock\/s8SendableP","type":"unresolvable","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"title":"mobilePublicKey","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","title":"devicePublicKey","abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"certificate"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"mobilePublicKey"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","interfaceLanguage":"swift"},"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"],"title":"Instance Properties"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"],"title":"Enumerations"}],"relationshipsSections":[{"kind":"relationships","type":"conformsTo","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/s8SendableP"]}],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate"]}],"sections":[],"metadata":{"navigatorTitle":[{"kind":"identifier","text":"TedeeCertificate"}],"title":"TedeeCertificate","symbolKind":"struct","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A11CertificateV","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"roleHeading":"Structure","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"kind":"symbol","abstract":[],"title":"devicePublicKey","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"devicePublicKey"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"role":"symbol","abstract":[],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","kind":"symbol","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":", "},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"mobilePublicKey"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"kind":"symbol","abstract":[],"title":"expirationDate","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"expirationDate"},{"kind":"text","text":": "},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[],"title":"mobilePublicKey","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","kind":"symbol","title":"certificate","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/certificate.json b/docs/data/documentation/tedeelock/tedeecertificate/certificate.json index 8d151f1..a1f2c3f 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/certificate.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/certificate.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/certificate"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A11CertificateV11certificateSSvp","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","title":"certificate"},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","title":"certificate","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"certificate"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:9TedeeLock0A11CertificateV11certificateSSvp","title":"certificate","role":"symbol","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property"},"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"certificate"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/certificate"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/certificate":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/certificate","kind":"symbol","title":"certificate","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/certificate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"certificate","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/devicepublickey.json b/docs/data/documentation/tedeelock/tedeecertificate/devicepublickey.json index a54c135..29cf028 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/devicepublickey.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/devicepublickey.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A11CertificateV15devicePublicKeySSvp","symbolKind":"property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"title":"devicePublicKey","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"devicePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","title":"devicePublicKey","abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"devicePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"languages":["swift"]}]}],"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"devicePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","title":"devicePublicKey","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"symbolKind":"property","externalID":"s:9TedeeLock0A11CertificateV15devicePublicKeySSvp"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/devicePublicKey":{"kind":"symbol","abstract":[],"title":"devicePublicKey","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"devicePublicKey"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/devicePublicKey","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/devicepublickey"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors.json b/docs/data/documentation/tedeelock/tedeecertificate/errors.json index 89f0329..77e1b99 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors.json @@ -1 +1 @@ -{"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"],"generated":true,"title":"Default Implementations"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"text":"Errors","kind":"identifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeCertificate.Errors","symbolKind":"enum","extendedModule":"TedeeLock","roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"externalID":"s:9TedeeLock0A11CertificateV6ErrorsO"},"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors"]}],"kind":"symbol","sections":[],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","title":"Conforms To"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","kind":"article","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","title":"TedeeCertificate.Errors.invalidMobilePublicKey","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/s5ErrorP":{"title":"Swift.Error","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDevicePublicKey","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey","title":"TedeeCertificate.Errors.invalidDevicePublicKey","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","title":"Error Implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/SH":{"title":"Swift.Hashable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"role":"symbol","title":"TedeeCertificate.Errors.expired","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"extendedModule":"TedeeLock","roleHeading":"Enumeration","symbolKind":"enum","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"title":"TedeeCertificate.Errors","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO"},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"]},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"],"title":"Default Implementations"}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Errors","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","abstract":[],"title":"TedeeCertificate.Errors.invalidDevicePublicKey","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidDevicePublicKey"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"},"doc://TedeeLock/SH":{"type":"unresolvable","title":"Swift.Hashable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/s5ErrorP":{"type":"unresolvable","title":"Swift.Error","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations","title":"Equatable Implementations","abstract":[],"type":"topic","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","abstract":[],"title":"TedeeCertificate.Errors.invalidMobilePublicKey","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidMobilePublicKey","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/SQ":{"type":"unresolvable","title":"Swift.Equatable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"abstract":[],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","title":"TedeeCertificate.Errors.expired","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","title":"Error Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json index 828a167..f8de0b5 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/!=(_:_:).json @@ -1 +1 @@ -{"kind":"symbol","abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"metadata":{"symbolKind":"op","role":"symbol","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO","extendedModule":"Swift","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"roleHeading":"Operator","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","kind":"article","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"internalParam","text":"lhs"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"title":"!=(_:_:)","roleHeading":"Operator","symbolKind":"op","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"extendedModule":"Swift","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","title":"!=(_:_:)","abstract":[],"type":"topic","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations","title":"Equatable Implementations","abstract":[],"type":"topic","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json index 3bf4b9c..d34cbd4 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/equatable-implementations.json @@ -1 +1 @@ -{"kind":"article","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)"],"title":"Operators","generated":true}],"metadata":{"role":"collectionGroup","title":"Equatable Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"!=(_:_:)"}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Equatable-Implementations","interfaceLanguage":"swift"},"kind":"article","topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)"],"generated":true}],"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Equatable Implementations"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/!=(_:_:)","title":"!=(_:_:)","abstract":[],"type":"topic","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json b/docs/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json index 758c7d3..4347df7 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/error-implementations.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription"],"generated":true,"title":"Instance Properties"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"sections":[],"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"title":"Error Implementations","role":"collectionGroup"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations"]}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","type":"topic","kind":"symbol","title":"localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"sections":[],"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Error Implementations"},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription"],"generated":true,"title":"Instance Properties"}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","type":"topic","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"localizedDescription","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/expired.json b/docs/data/documentation/tedeelock/tedeecertificate/errors/expired.json index c50cb0c..3cf0eb3 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/expired.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/expired.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/expired"]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO7expiredyA2EmF","roleHeading":"Case","title":"TedeeCertificate.Errors.expired","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"expired"}]},"kind":"symbol","sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"expired","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"role":"symbol","title":"TedeeCertificate.Errors.expired","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO7expiredyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}],"title":"TedeeCertificate.Errors.expired","role":"symbol","symbolKind":"case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/expired"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/expired":{"abstract":[],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/expired","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"expired","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/expired","title":"TedeeCertificate.Errors.expired","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json b/docs/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json index 855920b..6d559c8 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/invaliddevicepublickey.json @@ -1 +1 @@ -{"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidDevicePublicKeyyA2EmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeCertificate.Errors.invalidDevicePublicKey","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidDevicePublicKey","kind":"identifier"}],"roleHeading":"Case"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDevicePublicKey","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDevicePublicKey","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey","title":"TedeeCertificate.Errors.invalidDevicePublicKey","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","interfaceLanguage":"swift"},"sections":[],"metadata":{"role":"symbol","symbolKind":"case","title":"TedeeCertificate.Errors.invalidDevicePublicKey","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidDevicePublicKeyyA2EmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDevicePublicKey"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDevicePublicKey"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidDevicePublicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidDevicePublicKey","abstract":[],"title":"TedeeCertificate.Errors.invalidDevicePublicKey","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidDevicePublicKey"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invaliddevicepublickey"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json b/docs/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json index 8c5b103..8388009 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/invalidmobilepublickey.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey"]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidMobilePublicKeyyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidMobilePublicKey","kind":"identifier"}],"role":"symbol","title":"TedeeCertificate.Errors.invalidMobilePublicKey","symbolKind":"case","roleHeading":"Case"},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey","interfaceLanguage":"swift"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","title":"TedeeCertificate.Errors.invalidMobilePublicKey","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidMobilePublicKey"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0A11CertificateV6ErrorsO22invalidMobilePublicKeyyA2EmF","role":"symbol","title":"TedeeCertificate.Errors.invalidMobilePublicKey","symbolKind":"case"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidMobilePublicKey","kind":"identifier"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/invalidMobilePublicKey":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/invalidmobilepublickey","abstract":[],"title":"TedeeCertificate.Errors.invalidMobilePublicKey","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidMobilePublicKey","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/invalidMobilePublicKey","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json b/docs/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json index bfb96cf..b62c8bd 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/errors/localizeddescription.json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property","extendedModule":"Swift","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO","symbolKind":"property","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"platforms":[{"introducedAt":"8.0","name":"iOS","unavailable":false,"deprecated":false,"beta":false},{"deprecated":false,"unavailable":false,"name":"macOS","introducedAt":"10.10","beta":false},{"beta":false,"name":"tvOS","deprecated":false,"introducedAt":"9.0","unavailable":false},{"introducedAt":"2.0","beta":false,"name":"watchOS","deprecated":false,"unavailable":false}],"title":"localizedDescription"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"text":".","type":"text"}],"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","type":"topic","kind":"symbol","title":"localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","title":"Error Implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","title":"TedeeCertificate.Errors","type":"topic","kind":"symbol","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"sections":[],"metadata":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"roleHeading":"Instance Property","role":"symbol","extendedModule":"Swift","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"title":"localizedDescription","platforms":[{"name":"iOS","beta":false,"introducedAt":"8.0","unavailable":false,"deprecated":false},{"unavailable":false,"deprecated":false,"introducedAt":"10.10","beta":false,"name":"macOS"},{"introducedAt":"9.0","name":"tvOS","deprecated":false,"unavailable":false,"beta":false},{"deprecated":false,"introducedAt":"2.0","unavailable":false,"beta":false,"name":"watchOS"}],"symbolKind":"property","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A11CertificateV6ErrorsO"},"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":" { ","kind":"text"},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations"]]},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"text":".","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors","abstract":[],"title":"TedeeCertificate.Errors","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/errors","navigatorTitle":[{"kind":"identifier","text":"Errors"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/Error-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/error-implementations","title":"Error Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/Error-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeecertificate\/errors\/localizeddescription","type":"topic","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"localizedDescription","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/Errors\/localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/expirationdate.json b/docs/data/documentation/tedeelock/tedeecertificate/expirationdate.json index 5aadcef..110a8a9 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/expirationdate.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/expirationdate.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate"},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0A11CertificateV14expirationDate10Foundation0E0Vvp","symbolKind":"property","title":"expirationDate","roleHeading":"Instance Property"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"expirationDate","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"}]}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/expirationdate"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"}],"role":"symbol","type":"topic","kind":"symbol","abstract":[],"title":"expirationDate","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"expirationDate"},{"kind":"text","text":": "},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}],"title":"expirationDate","externalID":"s:9TedeeLock0A11CertificateV14expirationDate10Foundation0E0Vvp","role":"symbol","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate"},"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/expirationdate"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"expirationDate","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier","text":"Date"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/expirationDate":{"kind":"symbol","abstract":[],"title":"expirationDate","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"expirationDate"},{"kind":"text","text":": "},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/expirationDate","type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeecertificate\/expirationdate"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json b/docs/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json index e7bfa7a..ffe3f44 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json +++ b/docs/data/documentation/tedeelock/tedeecertificate/init(certificate:expirationdate:devicepublickey:mobilepublickey:).json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"symbolKind":"init","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":", ","kind":"text"},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"mobilePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}],"roleHeading":"Initializer","title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","externalID":"s:9TedeeLock0A11CertificateV11certificate14expirationDate15devicePublicKey06mobilehI0ACSS_10Foundation0F0VS2StKcfc"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"expirationDate"},{"kind":"text","text":": "},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"devicePublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"mobilePublicKey","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"content","content":[{"level":2,"text":"Discussion","type":"heading","anchor":"discussion"},{"style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeCertificate.Errors.expired, TedeeCertificate.Errors.invalidDevicePublicKey, TedeeCertificate.Errors.invalidMobilePublicKey","type":"text"}]}],"name":"Throws","type":"aside"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"certificate"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"mobilePublicKey"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","symbolKind":"init","externalID":"s:9TedeeLock0A11CertificateV11certificate14expirationDate15devicePublicKey06mobilehI0ACSS_10Foundation0F0VS2StKcfc","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier","text":"Date"},{"text":", ","kind":"text"},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"mobilePublicKey","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}],"roleHeading":"Initializer"},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"expirationDate"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"devicePublicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"text":"mobilePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"}]}],"kind":"declarations"},{"content":[{"text":"Discussion","level":2,"type":"heading","anchor":"discussion"},{"type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeCertificate.Errors.expired, TedeeCertificate.Errors.invalidDevicePublicKey, TedeeCertificate.Errors.invalidMobilePublicKey","type":"text"}]}],"name":"Throws"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)":{"role":"symbol","abstract":[],"title":"init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/init(certificate:expirationdate:devicepublickey:mobilepublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/init(certificate:expirationDate:devicePublicKey:mobilePublicKey:)","kind":"symbol","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"expirationDate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":", "},{"text":"devicePublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"mobilePublicKey"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json b/docs/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json index 5b45687..79a182b 100644 --- a/docs/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json +++ b/docs/data/documentation/tedeelock/tedeecertificate/mobilepublickey.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey"]}],"sections":[],"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A11CertificateV15mobilePublicKeySSvp","modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"property","title":"mobilePublicKey","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"mobilePublicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"title":"mobilePublicKey","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey"},"metadata":{"modules":[{"name":"TedeeLock"}],"title":"mobilePublicKey","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"symbolKind":"property","roleHeading":"Instance Property","role":"symbol","externalID":"s:9TedeeLock0A11CertificateV15mobilePublicKeySSvp"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate/mobilePublicKey":{"kind":"symbol","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"mobilePublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[],"title":"mobilePublicKey","url":"\/documentation\/tedeelock\/tedeecertificate\/mobilepublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate\/mobilePublicKey","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus.json index edf2ab8..7474387 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"abstract":[{"type":"text","text":"Represents connection status of the Tedee Lock"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property"],"title":"Instance Properties"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"],"title":"Enumerations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","interfaceLanguage":"swift"},"sections":[],"metadata":{"title":"TedeeConnectionStatus","externalID":"s:9TedeeLock0A16ConnectionStatusV","modules":[{"name":"TedeeLock"}],"roleHeading":"Structure","symbolKind":"struct","navigatorTitle":[{"kind":"identifier","text":"TedeeConnectionStatus"}],"role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeConnectionStatus"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier","text":"Error"},{"text":"?","kind":"text"}],"title":"error","abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"type":"text","text":" "},{"text":"Should be one ot ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","type":"reference","isActive":true},{"text":" error","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Represents connection status of the Tedee Lock"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV","role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","symbolKind":"struct","roleHeading":"Structure"},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property"]},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"role":"symbol","title":"error","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error","kind":"symbol","abstract":[{"text":"Optional error that caused the disconnection.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"Should be one ot "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"text":" error","type":"text"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","kind":"typeIdentifier","text":"Status"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"title":"serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/error.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/error.json index 91320b3..fc8ef19 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/error.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/error.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"type":"text","text":" "},{"text":"Should be one ot ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"type":"text","text":" error"}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","interfaceLanguage":"swift"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/error"]}],"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A16ConnectionStatusV5errors5Error_pSgvp","symbolKind":"property","title":"error","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier","text":"Error"},{"kind":"text","text":"?"}],"modules":[{"name":"TedeeLock"}],"role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"platforms":["macOS"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier","text":"Error"},{"text":"?","kind":"text"}],"title":"error","abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"type":"text","text":" "},{"text":"Should be one ot ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","type":"reference","isActive":true},{"text":" error","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error"}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/error"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"symbolKind":"property","title":"error","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"error","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Error","preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier"},{"kind":"text","text":"?"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV5errors5Error_pSgvp"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":"?","kind":"text"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"sections":[],"abstract":[{"type":"text","text":"Optional error that caused the disconnection."},{"text":" ","type":"text"},{"type":"text","text":"Should be one ot "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"type":"text","text":" error"}],"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/error":{"role":"symbol","title":"error","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/error","kind":"symbol","abstract":[{"text":"Optional error that caused the disconnection.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"Should be one ot "},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},{"text":" error","type":"text"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"error"},{"text":": ","kind":"text"},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/error"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json index 4fb7b58..f2fa3fd 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/serialnumber.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier","text":"TedeeSerialNumber"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber"]}],"abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"kind":"symbol","sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"}],"title":"serialNumber","roleHeading":"Instance Property","symbolKind":"property","externalID":"s:9TedeeLock0A16ConnectionStatusV12serialNumberAA0a6SerialF0Vvp"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","interfaceLanguage":"swift"},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"role":"symbol","title":"serialNumber","externalID":"s:9TedeeLock0A16ConnectionStatusV12serialNumberAA0a6SerialF0Vvp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/serialNumber":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/serialnumber","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/serialNumber","type":"topic","abstract":[{"type":"text","text":"Serial number of the Tedee Lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"title":"serialNumber"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json index 3059c27..9b89335 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum.json @@ -1 +1 @@ -{"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O","symbolKind":"enum","roleHeading":"Enumeration","title":"TedeeConnectionStatus.Status","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"navigatorTitle":[{"text":"Status","kind":"identifier"}],"modules":[{"name":"TedeeLock"}]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected"],"title":"Enumeration Cases"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"],"generated":true}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"title":"TedeeConnectionStatus.Status.connecting","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"connecting","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations","kind":"article","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","role":"collectionGroup","title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"title":"TedeeConnectionStatus.Status.disconnected","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","role":"symbol","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","title":"TedeeConnectionStatus.Status.connected","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"connected","kind":"identifier"}]}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O","symbolKind":"enum","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"role":"symbol","roleHeading":"Enumeration","title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"],"generated":true}],"kind":"symbol","sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","interfaceLanguage":"swift"},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"connecting"}],"title":"TedeeConnectionStatus.Status.connecting","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"title":"Equatable Implementations","type":"topic","role":"collectionGroup","kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"title":"TedeeConnectionStatus.Status.disconnected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"kind":"symbol","role":"symbol","title":"TedeeConnectionStatus.Status.connected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connected","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","abstract":[]},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json index bc25729..f86f965 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/!=(_:_:).json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"internalParam","text":"lhs"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"]]},"metadata":{"role":"symbol","title":"!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"extendedModule":"Swift","symbolKind":"op","roleHeading":"Operator","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A16ConnectionStatusV0D0O"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations","kind":"article","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","role":"collectionGroup","title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"platforms":["macOS"],"languages":["swift"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","roleHeading":"Operator","symbolKind":"op","title":"!=(_:_:)","extendedModule":"Swift","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A16ConnectionStatusV0D0O","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","interfaceLanguage":"swift"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/Equatable-Implementations":{"title":"Equatable Implementations","type":"topic","role":"collectionGroup","kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json index 440d71a..d291525 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connected.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connected"}]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O9connectedyA2EmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","role":"symbol","title":"TedeeConnectionStatus.Status.connected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connected"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","title":"TedeeConnectionStatus.Status.connected","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"connected","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]}}} \ No newline at end of file +{"kind":"symbol","metadata":{"title":"TedeeConnectionStatus.Status.connected","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"connected","kind":"identifier"}],"symbolKind":"case","role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O9connectedyA2EmF"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"connected"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connected":{"kind":"symbol","role":"symbol","title":"TedeeConnectionStatus.Status.connected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connected","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connected","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json index cb996a0..baa3f8d 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/connecting.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"connecting","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"title":"TedeeConnectionStatus.Status.connecting","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O10connectingyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connecting"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"title":"TedeeConnectionStatus.Status.connecting","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"connecting","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connecting"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O10connectingyA2EmF","roleHeading":"Case","title":"TedeeConnectionStatus.Status.connecting","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"connecting"}]},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/connecting":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/connecting","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"connecting"}],"title":"TedeeConnectionStatus.Status.connecting","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/connecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json index 038d666..4c85483 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/disconnected.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"platforms":["macOS"]}],"kind":"declarations"}],"metadata":{"roleHeading":"Case","role":"symbol","symbolKind":"case","title":"TedeeConnectionStatus.Status.disconnected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O12disconnectedyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"title":"TedeeConnectionStatus.Status.disconnected","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","role":"symbol","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]}}} \ No newline at end of file +{"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeConnectionStatus.Status.disconnected","symbolKind":"case","externalID":"s:9TedeeLock0A16ConnectionStatusV0D0O12disconnectedyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"roleHeading":"Case"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"disconnected","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/disconnected":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/disconnected","abstract":[],"role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"title":"TedeeConnectionStatus.Status.disconnected","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json index d8d6544..3c2c323 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.enum/equatable-implementations.json @@ -1 +1 @@ -{"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)"],"title":"Operators"}],"kind":"article","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"title":"Equatable Implementations","role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"metadata":{"role":"collectionGroup","title":"Equatable Implementations","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}]},"topicSections":[{"title":"Operators","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/Equatable-Implementations"},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"article","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum/!=(_:_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum\/!=(_:_:)","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum\/!=(_:_:)","type":"topic","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json index fe5b5ef..47e3234 100644 --- a/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json +++ b/docs/data/documentation/tedeelock/tedeeconnectionstatus/status-swift.property.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property"]}],"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","text":"Status"}],"platforms":["macOS"]}]}],"metadata":{"symbolKind":"property","title":"status","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A16ConnectionStatusV6statusAC0D0Ovp"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","kind":"symbol","type":"topic","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"status"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"text":"Status","kind":"identifier"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property"},"kind":"symbol","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","kind":"typeIdentifier"}],"title":"status","modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","externalID":"s:9TedeeLock0A16ConnectionStatusV6statusAC0D0Ovp","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum","kind":"typeIdentifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/status-swift.property":{"url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.property","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"status","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV0D0O","kind":"typeIdentifier","text":"Status"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/status-swift.property","title":"status","abstract":[{"type":"text","text":"Connection status of the Tedee Lock"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus/Status-swift.enum":{"abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeeconnectionstatus\/status-swift.enum","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Status","kind":"identifier"}],"title":"TedeeConnectionStatus.Status","navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus\/Status-swift.enum"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings.json b/docs/data/documentation/tedeelock/tedeedevicesettings.json index 0f2d542..d175479 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"platforms":["macOS"]}]}],"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled"]}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SE"],"kind":"relationships","type":"conformsTo","title":"Conforms To"}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings"]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"},"metadata":{"symbolKind":"struct","title":"TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14DeviceSettingsV","role":"symbol","roleHeading":"Structure"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","title":"postponedLockDelay","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","title":"buttonLockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","title":"autoLockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/SE":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","title":"autoLockImplicitDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockImplicitDelay","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","kind":"symbol","title":"autoLockDelay","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","title":"pullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","abstract":[],"title":"pullSpringDuration","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoPullSpringEnabled"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","abstract":[],"title":"autoPullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","kind":"symbol","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Structure","externalID":"s:9TedeeLock0A14DeviceSettingsV","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeDeviceSettings","kind":"identifier"}],"title":"TedeeDeviceSettings","role":"symbol","symbolKind":"struct","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","interfaceLanguage":"swift"},"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled"],"title":"Instance Properties"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings"]}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SE"],"type":"conformsTo","title":"Conforms To","kind":"relationships"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","abstract":[],"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonUnlockEnabled"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"abstract":[],"type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","title":"buttonLockEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"abstract":[],"kind":"symbol","title":"autoLockImplicitDelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoLockEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"title":"pullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","type":"topic","title":"postponedLockDelay","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockDelay","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]},"doc://TedeeLock/SE":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoPullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","role":"symbol","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"title":"pullSpringDuration","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","title":"autoLockDelay","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockDelay"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json index 05471c1..492a24f 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockdelay.json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay"},"metadata":{"externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB5DelaySivp","title":"autoLockDelay","modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoLockDelay"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","kind":"symbol","title":"autoLockDelay","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay"},"metadata":{"title":"autoLockDelay","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB5DelaySivp","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"role":"symbol","symbolKind":"property"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockdelay","title":"autoLockDelay","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockDelay"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json index 77a95f0..c43b03b 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockenabled.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","interfaceLanguage":"swift"},"metadata":{"title":"autoLockEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB7EnabledSbvp","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","symbolKind":"property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","title":"autoLockEnabled","kind":"symbol","role":"symbol","abstract":[]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","interfaceLanguage":"swift"},"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockEnabled"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}]}],"metadata":{"title":"autoLockEnabled","role":"symbol","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB7EnabledSbvp","modules":[{"name":"TedeeLock"}],"symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoLockEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json index 402456a..bce1feb 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitdelay.json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"]}],"metadata":{"roleHeading":"Instance Property","role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB13ImplicitDelaySivp","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoLockImplicitDelay","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"title":"autoLockImplicitDelay","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoLockImplicitDelay"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","title":"autoLockImplicitDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockImplicitDelay","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"sections":[],"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"role":"symbol","title":"autoLockImplicitDelay","symbolKind":"property","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB13ImplicitDelaySivp","modules":[{"name":"TedeeLock"}]},"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitDelay":{"type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitDelay","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"abstract":[],"kind":"symbol","title":"autoLockImplicitDelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitDelay","role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitdelay"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json index 9630af9..d03dc9c 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/autolockimplicitenabled.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","interfaceLanguage":"swift"},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB15ImplicitEnabledSbvp","role":"symbol","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"autoLockImplicitEnabled","roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled","role":"symbol","abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"title":"autoLockImplicitEnabled","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoLockImplicitEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0A14DeviceSettingsV04autoB15ImplicitEnabledSbvp"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoLockImplicitEnabled":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoLockImplicitEnabled","title":"autoLockImplicitEnabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoLockImplicitEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autolockimplicitenabled"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json index 27926be..8b72adb 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/autopullspringenabled.json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled"},"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"platforms":["macOS"],"languages":["swift"]}]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV21autoPullSpringEnabledSbvp","symbolKind":"property","roleHeading":"Instance Property","title":"autoPullSpringEnabled","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoPullSpringEnabled"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","abstract":[],"title":"autoPullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"sections":[],"metadata":{"title":"autoPullSpringEnabled","role":"symbol","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV21autoPullSpringEnabledSbvp","modules":[{"name":"TedeeLock"}],"symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled"]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"kind":"text","text":": "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/autoPullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/autopullspringenabled","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"autoPullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"title":"autoPullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/autoPullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json index e9e634b..0a7be1b 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/buttonlockenabled.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"role":"symbol","title":"buttonLockEnabled","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0A14DeviceSettingsV06buttonB7EnabledSbvp"},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonLockEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","title":"buttonLockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","role":"symbol","abstract":[]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"externalID":"s:9TedeeLock0A14DeviceSettingsV06buttonB7EnabledSbvp","title":"buttonLockEnabled","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonLockEnabled":{"abstract":[],"type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonlockenabled","title":"buttonLockEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonLockEnabled","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json index e0250b2..0dde414 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/buttonunlockenabled.json @@ -1 +1 @@ -{"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled"]}],"metadata":{"symbolKind":"property","title":"buttonUnlockEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV19buttonUnlockEnabledSbvp","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"buttonUnlockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled"]}],"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"buttonUnlockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonUnlockEnabled"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"symbolKind":"property","role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV19buttonUnlockEnabledSbvp","roleHeading":"Instance Property","title":"buttonUnlockEnabled","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/buttonUnlockEnabled":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/buttonUnlockEnabled","title":"buttonUnlockEnabled","url":"\/documentation\/tedeelock\/tedeedevicesettings\/buttonunlockenabled","abstract":[],"kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"buttonUnlockEnabled"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json b/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json index e058add..dc91edb 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockdelay.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","interfaceLanguage":"swift"},"metadata":{"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB5DelaySivp","title":"postponedLockDelay","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"postponedLockDelay"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","title":"postponedLockDelay","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"postponedLockDelay","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay"},"sections":[],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB5DelaySivp","symbolKind":"property","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","title":"postponedLockDelay","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"postponedLockDelay"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockDelay":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockDelay","abstract":[],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockdelay","type":"topic","title":"postponedLockDelay","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockDelay","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json index fdce36b..4469726 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/postponedlockenabled.json @@ -1 +1 @@ -{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"postponedLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled"]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"postponedLockEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB7EnabledSbvp"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","kind":"symbol","role":"symbol","abstract":[]}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"postponedLockEnabled"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"externalID":"s:9TedeeLock0A14DeviceSettingsV09postponedB7EnabledSbvp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"postponedLockEnabled","symbolKind":"property","roleHeading":"Instance Property"},"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/postponedLockEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/postponedlockenabled","role":"symbol","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"postponedLockEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/postponedLockEnabled","title":"postponedLockEnabled","abstract":[],"type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json b/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json index 0ccba97..1947728 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringduration.json @@ -1 +1 @@ -{"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"pullSpringDuration","externalID":"s:9TedeeLock0A14DeviceSettingsV18pullSpringDurationSivp","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringDuration"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"roleHeading":"Instance Property"},"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"languages":["swift"]}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","title":"TedeeDeviceSettings","kind":"symbol","abstract":[],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration","abstract":[],"title":"pullSpringDuration","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringDuration"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"modules":[{"name":"TedeeLock"}],"title":"pullSpringDuration","externalID":"s:9TedeeLock0A14DeviceSettingsV18pullSpringDurationSivp","symbolKind":"property","role":"symbol","roleHeading":"Instance Property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringDuration":{"kind":"symbol","abstract":[],"type":"topic","title":"pullSpringDuration","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringduration","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"pullSpringDuration","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringDuration"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json b/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json index 45600ce..b505dac 100644 --- a/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json +++ b/docs/data/documentation/tedeelock/tedeedevicesettings/pullspringenabled.json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled"},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"pullSpringEnabled","externalID":"s:9TedeeLock0A14DeviceSettingsV17pullSpringEnabledSbvp","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","title":"pullSpringEnabled","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","kind":"symbol","abstract":[],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled"]}],"sections":[],"metadata":{"symbolKind":"property","roleHeading":"Instance Property","title":"pullSpringEnabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpringEnabled"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","externalID":"s:9TedeeLock0A14DeviceSettingsV17pullSpringEnabledSbvp","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings/pullSpringEnabled":{"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings\/pullspringenabled","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullSpringEnabled","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"title":"pullSpringEnabled","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings\/pullSpringEnabled","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager.json b/docs/data/documentation/tedeelock/tedeelockmanager.json index 8668405..2d80af3 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager.json @@ -1 +1 @@ -{"topicSections":[{"title":"Configuration","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"title":"Connection"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"],"title":"Comunication"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"},{"title":"Instance Methods","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)"]},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"],"generated":true}],"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s8SendableP","doc:\/\/TedeeLock\/ScA","doc:\/\/TedeeLock\/12_Concurrency8AnyActorP"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager"]}],"kind":"symbol","metadata":{"role":"symbol","symbolKind":"class","fragments":[{"kind":"keyword","text":"class"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"roleHeading":"Class","title":"TedeeLockManager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC"},"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"final"},{"kind":"text","text":" "},{"text":"actor","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"content","content":[{"text":"Overview","type":"heading","level":2,"anchor":"Overview"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","interfaceLanguage":"swift"},"sections":[],"abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")>","kind":"text"}],"abstract":[{"type":"text","text":"Subscribe to this stream to receive bluetooth notifications send by the lock"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"abstract":[{"text":"Register the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","title":"registerLock(_:registration:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getVersion"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier","text":"TedeeSoftwareVersion"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","kind":"symbol","title":"getVersion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","role":"symbol","abstract":[{"type":"text","text":"Get firmware version"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/12_Concurrency8AnyActorP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/12_Concurrency8AnyActorP","title":"_Concurrency.AnyActor"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getAddLockData"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","role":"symbol","abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"title":"sendCommand(_:command:parameters:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameters"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]?)"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"type":"topic","abstract":[{"type":"text","text":"Get lock settings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","kind":"symbol","title":"getLockSettings(from:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"},"doc://TedeeLock/ScA":{"identifier":"doc:\/\/TedeeLock\/ScA","title":"_Concurrency.Actor","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","title":"unsecureConnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"final","kind":"keyword"},{"text":" ","kind":"text"},{"text":"actor","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeLockManager","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]},{"content":[{"type":"heading","level":2,"text":"Overview","anchor":"Overview"}],"kind":"content"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"topicSections":[{"title":"Configuration","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]},{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"]},{"title":"Comunication","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"]},{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)"],"title":"Instance Methods"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"],"title":"Enumerations"},{"generated":true,"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]}],"abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager"]}],"metadata":{"fragments":[{"kind":"keyword","text":"class"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"role":"symbol","roleHeading":"Class","externalID":"s:9TedeeLock0aB7ManagerC","modules":[{"name":"TedeeLock"}],"symbolKind":"class","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"title":"TedeeLockManager"},"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s8SendableP","doc:\/\/TedeeLock\/ScA","doc:\/\/TedeeLock\/12_Concurrency8AnyActorP"],"title":"Conforms To","type":"conformsTo","kind":"relationships"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","abstract":[{"text":"Get lock settings","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockSettings","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","kind":"typeIdentifier","text":"TedeeDeviceSettings"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)","title":"getLockSettings(from:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/12_Concurrency8AnyActorP":{"title":"_Concurrency.AnyActor","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/12_Concurrency8AnyActorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification"},{"text":")>","kind":"text"}],"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"title":"registerLock(_:registration:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","abstract":[{"text":"Register the lock","type":"text"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/ScA":{"title":"_Concurrency.Actor","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/ScA"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"abstract":[{"text":"Get firmware version","type":"text"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","type":"topic","title":"getVersion(from:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAddLockData"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeAddLock","preciseIdentifier":"s:9TedeeLock0a3AddB0V"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"title":"sendCommand(_:command:parameters:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"This method allows to send command to the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error","type":"text"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","title":"unsecureConnect(_:)","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json b/docs/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json index f5e1492..faa2deb 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/actor-implementations.json @@ -1 +1 @@ -{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"},"metadata":{"role":"collectionGroup","title":"Actor Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"article","schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"topicSections":[{"title":"Instance Methods","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"assertIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":")","kind":"text"}],"role":"symbol","title":"assertIsolated(_:file:line:)","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"title":"preconditionIsolated(_:file:line:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","abstract":[],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"assumeIsolated","kind":"identifier"},{"text":"<","kind":"text"},{"text":"T","kind":"genericParameter"},{"text":">((","kind":"text"},{"kind":"keyword","text":"isolated"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"}],"title":"assumeIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"metadata":{"roleHeading":"API Collection","role":"collectionGroup","title":"Actor Implementations","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"topicSections":[{"title":"Instance Methods","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"},"sections":[],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","type":"topic","kind":"symbol","title":"assertIsolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assertIsolated"},{"kind":"text","text":"(() -> "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier","text":"StaticString"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"kind":"text","text":")"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","type":"topic","kind":"symbol","title":"preconditionIsolated(_:file:line:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"title":"assumeIsolated(_:file:line:)","abstract":[],"kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assumeIsolated"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">(("},{"text":"isolated","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json b/docs/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json index e12b62f..0d38144 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/assertisolated(_:file:line:).json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"text":"nonisolated","kind":"attribute"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"assertIsolated","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"kind":"internalParam","text":"message"},{"text":": ","kind":"text"},{"kind":"attribute","text":"@autoclosure "},{"text":"() -> ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":" = String(), "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#line"},{"text":")","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"title":"assertIsolated(_:file:line:)","extendedModule":"_Concurrency","roleHeading":"Instance Method","role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"externalID":"s:ScA12_ConcurrencyE14assertIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"assertIsolated"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}],"symbolKind":"method","platforms":[{"introducedAt":"13.0","unavailable":false,"name":"iOS","beta":false,"deprecated":false},{"beta":false,"deprecated":false,"name":"macOS","unavailable":false,"introducedAt":"10.15"},{"introducedAt":"13.0","name":"tvOS","beta":false,"deprecated":false,"unavailable":false},{"unavailable":false,"name":"watchOS","deprecated":false,"beta":false,"introducedAt":"6.0"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Actor.assertIsolated(_:file:line:)","type":"codeVoice"},{"text":".","type":"text"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"sections":[],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"assertIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":")","kind":"text"}],"role":"symbol","title":"assertIsolated(_:file:line:)","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Actor.assertIsolated(_:file:line:)"},{"type":"text","text":"."}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"text","text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n"},{"kind":"attribute","text":"nonisolated"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"assertIsolated","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"message"},{"text":": ","kind":"text"},{"kind":"attribute","text":"@autoclosure "},{"kind":"text","text":"() -> "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":" = String(), "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier","text":"StaticString"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#fileID"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#line"},{"text":")","kind":"text"}],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"metadata":{"extendedModule":"_Concurrency","externalID":"s:ScA12_ConcurrencyE14assertIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","platforms":[{"unavailable":false,"deprecated":false,"introducedAt":"13.0","beta":false,"name":"iOS"},{"introducedAt":"10.15","unavailable":false,"deprecated":false,"name":"macOS","beta":false},{"name":"tvOS","introducedAt":"13.0","unavailable":false,"beta":false,"deprecated":false},{"unavailable":false,"beta":false,"deprecated":false,"introducedAt":"6.0","name":"watchOS"}],"role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"title":"assertIsolated(_:file:line:)","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"assertIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"text":"UInt","preciseIdentifier":"s:Su","kind":"typeIdentifier"},{"kind":"text","text":")"}],"symbolKind":"method"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assertIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assertIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assertisolated(_:file:line:)","type":"topic","kind":"symbol","title":"assertIsolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assertIsolated"},{"kind":"text","text":"(() -> "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier","text":"StaticString"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"kind":"text","text":")"}],"abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json b/docs/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json index 14e9ac7..afde4ae 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/assumeisolated(_:file:line:).json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"kind":"attribute","text":"nonisolated"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"assumeIsolated","kind":"identifier"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">("},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"kind":"internalParam","text":"operation"},{"text":": (","kind":"text"},{"text":"isolated","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#fileID"},{"kind":"text","text":", "},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":" = ","kind":"text"},{"kind":"keyword","text":"#line"},{"text":") ","kind":"text"},{"text":"rethrows","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}]}],"kind":"declarations"}],"sections":[],"metadata":{"platforms":[{"unavailable":false,"introducedAt":"13.0","deprecated":false,"name":"iOS","beta":false},{"unavailable":false,"name":"macOS","deprecated":false,"beta":false,"introducedAt":"10.15"},{"beta":false,"name":"tvOS","introducedAt":"13.0","unavailable":false,"deprecated":false},{"introducedAt":"6.0","name":"watchOS","unavailable":false,"beta":false,"deprecated":false}],"roleHeading":"Instance Method","extendedModule":"_Concurrency","externalID":"s:ScA12_ConcurrencyE14assumeIsolated_4file4lineqd__qd__xYiKXE_s12StaticStringVSutKlF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","modules":[{"relatedModules":["_Concurrency"],"name":"TedeeLock"}],"symbolKind":"method","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"assumeIsolated","kind":"identifier"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"text":">((","kind":"text"},{"text":"isolated","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"}],"role":"symbol","title":"assumeIsolated(_:file:line:)"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Actor.assumeIsolated(_:file:line:)","type":"codeVoice"},{"type":"text","text":"."}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","abstract":[],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"assumeIsolated","kind":"identifier"},{"text":"<","kind":"text"},{"text":"T","kind":"genericParameter"},{"text":">((","kind":"text"},{"kind":"keyword","text":"isolated"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"kind":"text","text":" -> "},{"text":"T","kind":"typeIdentifier"}],"title":"assumeIsolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","interfaceLanguage":"swift"},"metadata":{"platforms":[{"unavailable":false,"introducedAt":"13.0","beta":false,"name":"iOS","deprecated":false},{"beta":false,"introducedAt":"10.15","name":"macOS","deprecated":false,"unavailable":false},{"beta":false,"deprecated":false,"name":"tvOS","unavailable":false,"introducedAt":"13.0"},{"beta":false,"introducedAt":"6.0","deprecated":false,"name":"watchOS","unavailable":false}],"role":"symbol","roleHeading":"Instance Method","extendedModule":"_Concurrency","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"symbolKind":"method","title":"assumeIsolated(_:file:line:)","externalID":"s:ScA12_ConcurrencyE14assumeIsolated_4file4lineqd__qd__xYiKXE_s12StaticStringVSutKlF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"assumeIsolated"},{"text":"<","kind":"text"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">(("},{"text":"isolated","kind":"keyword"},{"kind":"text","text":" "},{"text":"Self","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"StaticString","preciseIdentifier":"s:s12StaticStringV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"rethrows","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"}]},"kind":"symbol","sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"text":"nonisolated","kind":"attribute"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"assumeIsolated"},{"text":"<","kind":"text"},{"kind":"genericParameter","text":"T"},{"text":">(","kind":"text"},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"operation","kind":"internalParam"},{"text":": (","kind":"text"},{"kind":"keyword","text":"isolated"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"T"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Su","text":"UInt"},{"text":" = ","kind":"text"},{"text":"#line","kind":"keyword"},{"text":") ","kind":"text"},{"text":"rethrows","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}],"platforms":["macOS"]}]}],"abstract":[{"type":"text","text":"Inherited from "},{"code":"Actor.assumeIsolated(_:file:line:)","type":"codeVoice"},{"text":".","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/assumeIsolated(_:file:line:)":{"title":"assumeIsolated(_:file:line:)","abstract":[],"kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"assumeIsolated"},{"kind":"text","text":"<"},{"text":"T","kind":"genericParameter"},{"kind":"text","text":">(("},{"text":"isolated","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"T"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":") ","kind":"text"},{"kind":"keyword","text":"rethrows"},{"text":" -> ","kind":"text"},{"text":"T","kind":"typeIdentifier"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/assumeIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/assumeisolated(_:file:line:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json b/docs/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json index 983aabb..5ef21b7 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/closelock(_:parameter:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)"},"abstract":[{"text":"Close lock","type":"text"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"closeLock","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"},{"text":" = .none) ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier"}],"languages":["swift"]}]},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}]},{"name":"parameter","content":[{"type":"paragraph","inlineContent":[{"text":"Specify the behavour of the close lock action","type":"text"}]}]}]},{"kind":"content","content":[{"type":"heading","text":"Return Value","anchor":"return-value","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":"Response from the lock with either success or reason why close lock action cannot be performed by the lock"}]}]}],"seeAlsoSections":[{"generated":true,"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"]}],"metadata":{"title":"closeLock(_:parameter:)","symbolKind":"method","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"closeLock"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC05closeB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameter"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":" = .none) ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"languages":["swift"],"platforms":["macOS"]}]},{"parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}]},{"content":[{"inlineContent":[{"type":"text","text":"Specify the behavour of the close lock action"}],"type":"paragraph"}],"name":"parameter"}],"kind":"parameters"},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"inlineContent":[{"type":"text","text":"Response from the lock with either success or reason why close lock action cannot be performed by the lock"}],"type":"paragraph"}]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)"},"abstract":[{"type":"text","text":"Close lock"}],"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"}],"kind":"symbol","metadata":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"closeLock","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"role":"symbol","title":"closeLock(_:parameter:)","externalID":"s:9TedeeLock0aB7ManagerC05closeB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF","extendedModule":"TedeeLock","symbolKind":"method","roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json b/docs/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json index 9886ecf..2c46b22 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/connect(_:certificate:keepconnection:).json @@ -1 +1 @@ -{"seeAlsoSections":[{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeCertificate","preciseIdentifier":"s:9TedeeLock0A11CertificateV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate"},{"kind":"text","text":", "},{"text":"keepConnection","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"kind":"text","text":" = false) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"languages":["swift"]}]},{"parameters":[{"name":"keepConnection","content":[{"type":"paragraph","inlineContent":[{"text":"If true, allows to automatically reconnect if lock disconnect with us. To end connection and do not reconnect automaticallly, use disconnect(_:). Default value is ‘false’","type":"text"}]}]}],"kind":"parameters"},{"kind":"content","content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"content":[{"inlineContent":[{"type":"text","text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.invalidCertificate, TedeeLockManager.Errors.secureSessionFailed, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected, TedeeLockManager.Errors.missingSignedDateTime, TedeeLockManager.Errors.signedDateTimeProvider"}],"type":"paragraph"}],"name":"Throws","style":"note","type":"aside"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","abstract":[{"text":"Method to find and connect to the Lock via bluetooth.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"method","title":"connect(_:certificate:keepConnection:)","externalID":"s:9TedeeLock0aB7ManagerC7connect_11certificate14keepConnectionyAA0A12SerialNumberV_AA0A11CertificateVSbtYaKF","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"connect"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"extendedModule":"TedeeLock","roleHeading":"Instance Method"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)"]}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"url":"\/documentation\/tedeelock\/tedeecertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","type":"topic","kind":"symbol","title":"TedeeCertificate","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeCertificate"}],"navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC7connect_11certificate14keepConnectionyAA0A12SerialNumberV_AA0A11CertificateVSbtYaKF","symbolKind":"method","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":", "},{"kind":"externalParam","text":"certificate"},{"kind":"text","text":": "},{"text":"TedeeCertificate","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV"},{"kind":"text","text":", "},{"text":"keepConnection","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"title":"connect(_:certificate:keepConnection:)","roleHeading":"Instance Method","role":"symbol"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"connect","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":" = false) ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}]}],"kind":"declarations"},{"parameters":[{"content":[{"type":"paragraph","inlineContent":[{"text":"If true, allows to automatically reconnect if lock disconnect with us. To end connection and do not reconnect automaticallly, use disconnect(_:). Default value is ‘false’","type":"text"}]}],"name":"keepConnection"}],"kind":"parameters"},{"content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"style":"note","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.invalidCertificate, TedeeLockManager.Errors.secureSessionFailed, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected, TedeeLockManager.Errors.missingSignedDateTime, TedeeLockManager.Errors.signedDateTimeProvider"}]}],"type":"aside","name":"Throws"}],"kind":"content"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","seeAlsoSections":[{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeCertificate":{"kind":"symbol","role":"symbol","navigatorTitle":[{"text":"TedeeCertificate","kind":"identifier"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeCertificate","kind":"identifier"}],"abstract":[],"title":"TedeeCertificate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeCertificate","url":"\/documentation\/tedeelock\/tedeecertificate","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json b/docs/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json index 92b0225..c9957d6 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/connectionstatusstream.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream"]}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)"],"title":"Connection","generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"lazy","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"AsyncStream","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":"> { "},{"kind":"keyword","text":"get"},{"text":" ","kind":"text"},{"text":"set","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]},{"kind":"content","content":[{"text":"Return Value","type":"heading","level":2,"anchor":"return-value"},{"inlineContent":[{"type":"text","text":""},{"text":" ","type":"text"},{"text":"- ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},{"text":": contains serial number, status and optionally error that caused disconnection","type":"text"}],"type":"paragraph"}]}],"metadata":{"roleHeading":"Instance Property","externalID":"s:9TedeeLock0aB7ManagerC22connectionStatusStreamScSyAA0a10ConnectionE0VGvp","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"text":"<","kind":"text"},{"text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","kind":"typeIdentifier"},{"kind":"text","text":">"}],"symbolKind":"property","role":"symbol","title":"connectionStatusStream","modules":[{"name":"TedeeLock"}]},"abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","role":"symbol","title":"TedeeConnectionStatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC22connectionStatusStreamScSyAA0a10ConnectionE0VGvp","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:ScS","text":"AsyncStream","kind":"typeIdentifier"},{"kind":"text","text":"<"},{"text":"TedeeConnectionStatus","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"title":"connectionStatusStream","symbolKind":"property","modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"lazy"},{"text":" ","kind":"text"},{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"connectionStatusStream"},{"text":": ","kind":"text"},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"text":"<","kind":"text"},{"text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},{"kind":"text","text":"> { "},{"text":"get","kind":"keyword"},{"text":" ","kind":"text"},{"text":"set","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"]}],"kind":"declarations"},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":""},{"type":"text","text":" "},{"type":"text","text":"- "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus","isActive":true,"type":"reference"},{"type":"text","text":": contains serial number, status and optionally error that caused disconnection"}]}],"kind":"content"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)"],"title":"Connection","generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeConnectionStatus":{"role":"symbol","navigatorTitle":[{"text":"TedeeConnectionStatus","kind":"identifier"}],"title":"TedeeConnectionStatus","type":"topic","url":"\/documentation\/tedeelock\/tedeeconnectionstatus","kind":"symbol","abstract":[{"text":"Represents connection status of the Tedee Lock","type":"text"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeConnectionStatus","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeConnectionStatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json index f09bdb9..3d29335 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/disconnect(_:).json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"seeAlsoSections":[{"title":"Connection","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"languages":["swift"],"platforms":["macOS"]}]},{"content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"type":"aside","content":[{"inlineContent":[{"text":"TedeeLockManager.Errors.notConnected","type":"text"}],"type":"paragraph"}],"name":"Throws","style":"note"}],"kind":"content"}],"metadata":{"symbolKind":"method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"externalID":"s:9TedeeLock0aB7ManagerC10disconnectyyAA0A12SerialNumberVYaKF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"disconnect(_:)","roleHeading":"Instance Method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"type":"text","text":"This method allows to disconnect with connected lock."}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnect"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"platforms":["macOS"]}],"kind":"declarations"},{"content":[{"level":2,"anchor":"discussion","text":"Discussion","type":"heading"},{"name":"Throws","type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notConnected","type":"text"}]}]}],"kind":"content"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true,"title":"Connection"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"disconnect(_:)","symbolKind":"method","externalID":"s:9TedeeLock0aB7ManagerC10disconnectyyAA0A12SerialNumberVYaKF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnect"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}],"roleHeading":"Instance Method"},"abstract":[{"type":"text","text":"This method allows to disconnect with connected lock."}],"references":{"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors.json index 1ab72ad..eac404c 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors.json @@ -1 +1 @@ -{"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors"],"traits":[{"interfaceLanguage":"swift"}]}],"relationshipsSections":[{"title":"Conforms To","type":"conformsTo","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/s8SendableP"]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","interfaceLanguage":"swift"},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"],"generated":true,"title":"Default Implementations"}],"metadata":{"title":"TedeeLockManager.Errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO","extendedModule":"TedeeLock","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"roleHeading":"Enumeration","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"enum"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"title":"TedeeLockManager.Errors.noPermission","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyRegistered"}],"title":"TedeeLockManager.Errors.alreadyRegistered","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered","type":"topic"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","title":"TedeeLockManager.Errors.cantSendCommand","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantParseResponse","kind":"identifier"}],"title":"TedeeLockManager.Errors.cantParseResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","kind":"symbol","title":"TedeeLockManager.Errors.alreadyConnecting","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnecting"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","title":"TedeeLockManager.Errors.waitingForResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"waitingForResponse","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"signedDateTimeProvider","kind":"identifier"},{"kind":"text","text":"("},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":")","kind":"text"}],"kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"title":"TedeeLockManager.Errors.missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"kind":"symbol","title":"TedeeLockManager.Errors.secureSessionFailed","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"kind":"symbol","title":"TedeeLockManager.Errors.notConnected","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","role":"symbol"},"doc://TedeeLock/s5ErrorP":{"type":"unresolvable","title":"Swift.Error","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnected"}],"abstract":[],"title":"TedeeLockManager.Errors.alreadyConnected","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","abstract":[],"kind":"symbol","title":"TedeeLockManager.Errors.disconnected","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"title":"TedeeLockManager.Errors.invalidCertificate","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"title":"TedeeLockManager.Errors.invalidResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidResponse"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"title":"TedeeLockManager.Errors.deviceNotInitialized","role":"symbol","abstract":[],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"title":"TedeeLockManager.Errors.systemPermissions","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"platforms":["macOS"]}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"title":"TedeeLockManager.Errors","role":"symbol","symbolKind":"enum","roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}]},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/s8SendableP"],"title":"Conforms To","kind":"relationships","type":"conformsTo"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"},"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors"]}],"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"title":"Error Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"title":"TedeeLockManager.Errors.alreadyConnected","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"alreadyConnected","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","abstract":[]},"doc://TedeeLock/s5ErrorP":{"identifier":"doc:\/\/TedeeLock\/s5ErrorP","title":"Swift.Error","type":"unresolvable"},"doc://TedeeLock/s8SendableP":{"identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","type":"topic","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","title":"TedeeLockManager.Errors.waitingForResponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","kind":"symbol","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"waitingForResponse"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","title":"TedeeLockManager.Errors.deviceNotInitialized","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","kind":"symbol","title":"TedeeLockManager.Errors.notConnected","type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidResponse","kind":"identifier"}],"abstract":[],"title":"TedeeLockManager.Errors.invalidResponse","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting","title":"TedeeLockManager.Errors.alreadyConnecting","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","role":"symbol","title":"TedeeLockManager.Errors.noPermission","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantParseResponse"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","title":"TedeeLockManager.Errors.cantParseResponse","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","title":"TedeeLockManager.Errors.systemPermissions","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","abstract":[],"title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyRegistered"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Error","preciseIdentifier":"s:s5ErrorP"},{"kind":"text","text":")"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"role":"symbol","title":"TedeeLockManager.Errors.missingSignedDateTime","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantSendCommand"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","title":"TedeeLockManager.Errors.cantSendCommand","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","abstract":[],"title":"TedeeLockManager.Errors.secureSessionFailed","type":"topic","kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidCertificate"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate","title":"TedeeLockManager.Errors.invalidCertificate","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","title":"TedeeLockManager.Errors.disconnected","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json index 3533b18..6701e5b 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnected.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyConnected","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockManager.Errors.alreadyConnected","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO16alreadyConnectedyA2EmF"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnected"}],"platforms":["macOS"],"languages":["swift"]}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnected"}],"abstract":[],"title":"TedeeLockManager.Errors.alreadyConnected","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","metadata":{"roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnected"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO16alreadyConnectedyA2EmF","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockManager.Errors.alreadyConnected","symbolKind":"case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyConnected","kind":"identifier"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnected":{"title":"TedeeLockManager.Errors.alreadyConnected","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnected","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"alreadyConnected","kind":"identifier"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnected","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json index 715a9a6..2f4cb5e 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyconnecting.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","interfaceLanguage":"swift"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"alreadyConnecting","kind":"identifier"}],"platforms":["macOS"]}]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.alreadyConnecting","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyConnectingyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}],"roleHeading":"Case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","kind":"symbol","title":"TedeeLockManager.Errors.alreadyConnecting","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnecting"}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyConnecting"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyConnectingyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.alreadyConnecting","roleHeading":"Case","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyConnecting":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyConnecting"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyconnecting","title":"TedeeLockManager.Errors.alreadyConnecting","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyConnecting"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json index eb5287d..b14adde 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/alreadyregistered.json @@ -1 +1 @@ -{"metadata":{"symbolKind":"case","title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyRegisteredyA2EmF","role":"symbol","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"alreadyRegistered"}],"title":"TedeeLockManager.Errors.alreadyRegistered","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"metadata":{"symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17alreadyRegisteredyA2EmF","roleHeading":"Case"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"alreadyRegistered","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/alreadyRegistered":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/alreadyRegistered","abstract":[],"title":"TedeeLockManager.Errors.alreadyRegistered","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"alreadyRegistered"}],"type":"topic","role":"symbol","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/alreadyregistered"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json index 65aca74..6ae0aea 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantparseresponse.json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"symbolKind":"case","title":"TedeeLockManager.Errors.cantParseResponse","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17cantParseResponseyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"cantParseResponse","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"cantParseResponse","kind":"identifier"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantParseResponse","kind":"identifier"}],"title":"TedeeLockManager.Errors.cantParseResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"cantParseResponse","kind":"identifier"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"title":"TedeeLockManager.Errors.cantParseResponse","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantParseResponse"}],"roleHeading":"Case","symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17cantParseResponseyA2EmF","modules":[{"name":"TedeeLock"}]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantParseResponse":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantParseResponse"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantparseresponse","title":"TedeeLockManager.Errors.cantParseResponse","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantParseResponse"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json index 1469cff..0fbc4b3 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/cantsendcommand.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand"]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15cantSendCommandyA2EmF","title":"TedeeLockManager.Errors.cantSendCommand","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantSendCommand"}],"symbolKind":"case","roleHeading":"Case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","title":"TedeeLockManager.Errors.cantSendCommand","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"cantSendCommand"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand"]}],"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.cantSendCommand","symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15cantSendCommandyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"cantSendCommand","kind":"identifier"}],"roleHeading":"Case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/cantSendCommand":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"cantSendCommand"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/cantsendcommand","title":"TedeeLockManager.Errors.cantSendCommand","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/cantSendCommand"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json index b2e4181..fdd3251 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/devicenotinitialized.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"role":"symbol","title":"TedeeLockManager.Errors.deviceNotInitialized","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"deviceNotInitialized","kind":"identifier"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO20deviceNotInitializedyA2EmF"},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized"]}],"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"title":"TedeeLockManager.Errors.deviceNotInitialized","role":"symbol","abstract":[],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"deviceNotInitialized","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO20deviceNotInitializedyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"deviceNotInitialized","kind":"identifier"}],"title":"TedeeLockManager.Errors.deviceNotInitialized"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/deviceNotInitialized":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"deviceNotInitialized"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/devicenotinitialized","title":"TedeeLockManager.Errors.deviceNotInitialized","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/deviceNotInitialized","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json index 39e96fb..3350e7e 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/disconnected.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnected","kind":"identifier"}],"languages":["swift"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12disconnectedyA2EmF","role":"symbol","roleHeading":"Case","title":"TedeeLockManager.Errors.disconnected","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}]},"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","abstract":[],"kind":"symbol","title":"TedeeLockManager.Errors.disconnected","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12disconnectedyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}],"title":"TedeeLockManager.Errors.disconnected","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"disconnected"}]}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected","interfaceLanguage":"swift"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/disconnected":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"disconnected"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/disconnected","title":"TedeeLockManager.Errors.disconnected","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/disconnected"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json index 4143a94..6066533 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/error-implementations.json @@ -1 +1 @@ -{"kind":"article","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Error Implementations"},"sections":[],"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription"],"title":"Instance Properties"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"role":"symbol","title":"localizedDescription","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations"]}],"kind":"article","metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Error Implementations"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"topicSections":[{"title":"Instance Properties","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"title":"localizedDescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","type":"topic","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json index 58dd997..706afeb 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidcertificate.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","metadata":{"symbolKind":"case","title":"TedeeLockManager.Errors.invalidCertificate","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidCertificate"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18invalidCertificateyA2EmF"},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidCertificate"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"title":"TedeeLockManager.Errors.invalidCertificate","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18invalidCertificateyA2EmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.invalidCertificate","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"role":"symbol"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate"},"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidCertificate","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidCertificate":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidCertificate"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidcertificate","title":"TedeeLockManager.Errors.invalidCertificate","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidCertificate"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json index 99043f8..6a70d1b 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidparameters.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters"]}],"kind":"symbol","metadata":{"role":"symbol","roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.invalidParameters","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17invalidParametersyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidParameters"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17invalidParametersyA2EmF","title":"TedeeLockManager.Errors.invalidParameters","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidParameters","kind":"identifier"}]}]}],"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidParameters":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidParameters","type":"topic","title":"TedeeLockManager.Errors.invalidParameters","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidparameters","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameters","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json index 49615ce..4d46a44 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/invalidresponse.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"title":"TedeeLockManager.Errors.invalidResponse","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidResponse"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15invalidResponseyA2EmF","roleHeading":"Case","role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidResponse","kind":"identifier"}],"languages":["swift"]}]}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"title":"TedeeLockManager.Errors.invalidResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidResponse"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse"]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidResponse","kind":"identifier"}],"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.invalidResponse","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO15invalidResponseyA2EmF"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse"},"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidResponse","kind":"identifier"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/invalidResponse":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/invalidresponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/invalidResponse","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidResponse","kind":"identifier"}],"abstract":[],"title":"TedeeLockManager.Errors.invalidResponse","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json index aca4cba..e0ad4a8 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/localizeddescription.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription"},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"type":"text","text":"."}],"metadata":{"symbolKind":"property","extendedModule":"Swift","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0aB7ManagerC6ErrorsO","title":"localizedDescription","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"platforms":[{"introducedAt":"8.0","beta":false,"name":"iOS","unavailable":false,"deprecated":false},{"name":"macOS","beta":false,"introducedAt":"10.10","deprecated":false,"unavailable":false},{"unavailable":false,"beta":false,"name":"tvOS","introducedAt":"9.0","deprecated":false},{"beta":false,"introducedAt":"2.0","unavailable":false,"name":"watchOS","deprecated":false}],"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"role":"symbol","title":"localizedDescription","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"kind":"article","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file +{"metadata":{"roleHeading":"Instance Property","platforms":[{"beta":false,"deprecated":false,"unavailable":false,"introducedAt":"8.0","name":"iOS"},{"introducedAt":"10.10","beta":false,"name":"macOS","deprecated":false,"unavailable":false},{"deprecated":false,"introducedAt":"9.0","unavailable":false,"name":"tvOS","beta":false},{"name":"watchOS","introducedAt":"2.0","unavailable":false,"beta":false,"deprecated":false}],"symbolKind":"property","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"extendedModule":"Swift","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0aB7ManagerC6ErrorsO","role":"symbol","title":"localizedDescription"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Error.localizedDescription"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/localizedDescription":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"title":"localizedDescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/localizedDescription","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/localizeddescription","type":"topic","kind":"symbol","role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/Error-Implementations":{"title":"Error Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/Error-Implementations","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/error-implementations","type":"topic","kind":"article","role":"collectionGroup","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json index 1c283ae..fb386a9 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/missingsigneddatetime.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO21missingSignedDateTimeyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"missingSignedDateTime","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.missingSignedDateTime","symbolKind":"case"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"missingSignedDateTime","kind":"identifier"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"title":"TedeeLockManager.Errors.missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime"},"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"missingSignedDateTime","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager.Errors.missingSignedDateTime","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO21missingSignedDateTimeyA2EmF","symbolKind":"case","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/missingSignedDateTime":{"abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"missingSignedDateTime"}],"role":"symbol","title":"TedeeLockManager.Errors.missingSignedDateTime","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/missingSignedDateTime","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/missingsigneddatetime","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json index e97bf4c..d774946 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/nopermission.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission"},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}]}]}],"sections":[],"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.noPermission","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12noPermissionyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"title":"TedeeLockManager.Errors.noPermission","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"metadata":{"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12noPermissionyA2EmF","role":"symbol"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","role":"collection","type":"topic","kind":"symbol","title":"TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"type":"text","text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/noPermission":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/nopermission","role":"symbol","title":"TedeeLockManager.Errors.noPermission","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json index 2386ca2..56e5f34 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/notconnected.json @@ -1 +1 @@ -{"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected"},"metadata":{"title":"TedeeLockManager.Errors.notConnected","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConnected","kind":"identifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12notConnectedyA2EmF","roleHeading":"Case","role":"symbol"},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConnected","kind":"identifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"kind":"symbol","title":"TedeeLockManager.Errors.notConnected","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","role":"symbol"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"notConnected","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.notConnected","symbolKind":"case","role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO12notConnectedyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}]},"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notConnected":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notconnected","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConnected"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notConnected","kind":"symbol","title":"TedeeLockManager.Errors.notConnected","type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json index f0c0c53..0fff214 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/notfound.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO8notFoundyA2EmF","title":"TedeeLockManager.Errors.notFound","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"notFound"}],"roleHeading":"Case","symbolKind":"case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"notFound","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"role":"symbol","type":"topic","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"title":"TedeeLockManager.Errors.notFound","symbolKind":"case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO8notFoundyA2EmF","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"roleHeading":"Case","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/notFound":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notFound"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/notfound","title":"TedeeLockManager.Errors.notFound","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/notFound"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json index 3a2c37b..69d8cd2 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/securesessionfailed.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","interfaceLanguage":"swift"},"sections":[],"metadata":{"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO19secureSessionFailedyA2EmF","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"secureSessionFailed"}],"title":"TedeeLockManager.Errors.secureSessionFailed","role":"symbol"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"secureSessionFailed","kind":"identifier"}],"platforms":["macOS"]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"kind":"symbol","title":"TedeeLockManager.Errors.secureSessionFailed","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO19secureSessionFailedyA2EmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager.Errors.secureSessionFailed","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"secureSessionFailed","kind":"identifier"}],"languages":["swift"]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/secureSessionFailed":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"secureSessionFailed","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/securesessionfailed","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/secureSessionFailed","abstract":[],"title":"TedeeLockManager.Errors.secureSessionFailed","type":"topic","kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json index 9a43c7e..3387e0d 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/signeddatetimeprovider(_:).json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)"]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"signedDateTimeProvider","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:s5ErrorP","text":"Error","kind":"typeIdentifier"},{"kind":"text","text":")"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"role":"symbol","title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO22signedDateTimeProvideryAEs5Error_pcAEmF","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"text":"Error","preciseIdentifier":"s:s5ErrorP","kind":"typeIdentifier"},{"kind":"text","text":")"}],"modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"signedDateTimeProvider","kind":"identifier"},{"kind":"text","text":"("},{"text":"Error","kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP"},{"text":")","kind":"text"}],"kind":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"signedDateTimeProvider","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP","text":"Error"},{"kind":"text","text":")"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)"]}],"kind":"symbol","metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO22signedDateTimeProvideryAEs5Error_pcAEmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5ErrorP","text":"Error"},{"text":")","kind":"text"}],"roleHeading":"Case","symbolKind":"case","title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","role":"symbol"},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/signedDateTimeProvider(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/signeddatetimeprovider(_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/signedDateTimeProvider(_:)","abstract":[],"title":"TedeeLockManager.Errors.signedDateTimeProvider(_:)","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Error","preciseIdentifier":"s:s5ErrorP"},{"kind":"text","text":")"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json index 488b34f..d39552e 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/systempermissions.json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17systemPermissionsyA2EmF","roleHeading":"Case","symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockManager.Errors.systemPermissions","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"systemPermissions","kind":"identifier"}],"role":"symbol"},"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"systemPermissions","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"title":"TedeeLockManager.Errors.systemPermissions","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"case","title":"TedeeLockManager.Errors.systemPermissions","role":"symbol","roleHeading":"Case","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO17systemPermissionsyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/systemPermissions":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"systemPermissions"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/systempermissions","title":"TedeeLockManager.Errors.systemPermissions","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/systemPermissions"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json b/docs/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json index 2ab1606..ab85a9a 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/errors/waitingforresponse.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"waitingForResponse","kind":"identifier"}]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","title":"TedeeLockManager.Errors.waitingForResponse","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18waitingForResponseyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"waitingForResponse"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","role":"symbol","title":"TedeeLockManager.Errors","kind":"symbol","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","kind":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","title":"TedeeLockManager.Errors.waitingForResponse","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"waitingForResponse","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC6ErrorsO18waitingForResponseyA2EmF","symbolKind":"case","roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"waitingForResponse","kind":"identifier"}],"title":"TedeeLockManager.Errors.waitingForResponse"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"waitingForResponse","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors/waitingForResponse":{"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors\/waitingforresponse","title":"TedeeLockManager.Errors.waitingForResponse","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors\/waitingForResponse","kind":"symbol","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"waitingForResponse"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Errors":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Errors","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/errors","abstract":[],"title":"TedeeLockManager.Errors"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json index da10cde..451edf1 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/getaddlockdata(_:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Get add lock data."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAddLockData","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","text":"TedeeAddLock","preciseIdentifier":"s:9TedeeLock0a3AddB0V","kind":"typeIdentifier"}]}],"kind":"declarations"},{"parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}]}],"kind":"parameters"},{"content":[{"level":2,"type":"heading","anchor":"return-value","text":"Return Value"},{"type":"paragraph","inlineContent":[{"text":"Respons with data from lock that is required to add this lock to the account.","type":"text"}]}],"kind":"content"}],"sections":[],"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC06getAddB4DatayAA0aeB0VAA0A12SerialNumberVYaKF","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","role":"symbol","title":"getAddLockData(_:)","symbolKind":"method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAddLockData","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock","kind":"typeIdentifier"}],"extendedModule":"TedeeLock"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeAddLock","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"abstract":[],"title":"TedeeAddLock","url":"\/documentation\/tedeelock\/tedeeaddlock","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getAddLockData"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"}}} \ No newline at end of file +{"abstract":[{"text":"Get add lock data.","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)"]}],"sections":[],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC06getAddB4DatayAA0aeB0VAA0A12SerialNumberVYaKF","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAddLockData"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0a3AddB0V","text":"TedeeAddLock","kind":"typeIdentifier"}],"roleHeading":"Instance Method","title":"getAddLockData(_:)","extendedModule":"TedeeLock","role":"symbol","symbolKind":"method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAddLockData","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0a3AddB0V","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","kind":"typeIdentifier","text":"TedeeAddLock"}]}]},{"parameters":[{"content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}],"name":"serialNumber"}],"kind":"parameters"},{"content":[{"level":2,"type":"heading","text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Respons with data from lock that is required to add this lock to the account."}]}],"kind":"content"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getAddLockData(_:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getAddLockData(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAddLockData"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeAddLock","preciseIdentifier":"s:9TedeeLock0a3AddB0V"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getaddlockdata(_:)","kind":"symbol","title":"getAddLockData(_:)","role":"symbol","type":"topic","abstract":[{"text":"Get add lock data.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeAddLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeAddLock"}],"url":"\/documentation\/tedeelock\/tedeeaddlock","title":"TedeeAddLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeAddLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeAddLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json b/docs/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json index d80c277..b4887f7 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/getlocksettings(from:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Get lock settings"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","interfaceLanguage":"swift"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockSettings","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeDeviceSettings","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"platforms":["macOS"]}]},{"kind":"content","content":[{"type":"heading","anchor":"return-value","level":2,"text":"Return Value"},{"type":"paragraph","inlineContent":[{"text":"Responds with lock settings data","type":"text"}]}]},{"kind":"content","content":[{"anchor":"discussion","level":2,"text":"Discussion","type":"heading"},{"type":"unorderedList","items":[{"content":[{"inlineContent":[{"text":"Parameter: serialNumber: Serial number of the lock","type":"text"}],"type":"paragraph"}]}]}]}],"sections":[],"metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","kind":"typeIdentifier","text":"TedeeDeviceSettings"}],"symbolKind":"method","role":"symbol","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","title":"getLockSettings(from:)","externalID":"s:9TedeeLock0aB7ManagerC03getB8Settings4fromAA0a6DeviceE0VAA0A12SerialNumberV_tYaKF"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"type":"topic","abstract":[{"type":"text","text":"Get lock settings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","kind":"symbol","title":"getLockSettings(from:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"text":"TedeeDeviceSettings","kind":"identifier"}],"kind":"symbol","title":"TedeeDeviceSettings","url":"\/documentation\/tedeelock\/tedeedevicesettings","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"identifier"}],"abstract":[],"role":"symbol","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getLockSettings"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","text":"TedeeDeviceSettings","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}]},{"content":[{"level":2,"text":"Return Value","type":"heading","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Responds with lock settings data"}]}],"kind":"content"},{"content":[{"level":2,"text":"Discussion","anchor":"discussion","type":"heading"},{"items":[{"content":[{"inlineContent":[{"type":"text","text":"Parameter: serialNumber: Serial number of the lock"}],"type":"paragraph"}]}],"type":"unorderedList"}],"kind":"content"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","interfaceLanguage":"swift"},"sections":[],"metadata":{"title":"getLockSettings(from:)","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockSettings","kind":"identifier"},{"kind":"text","text":"("},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeDeviceSettings","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV"}],"roleHeading":"Instance Method","externalID":"s:9TedeeLock0aB7ManagerC03getB8Settings4fromAA0a6DeviceE0VAA0A12SerialNumberV_tYaKF","symbolKind":"method","role":"symbol","extendedModule":"TedeeLock"},"abstract":[{"type":"text","text":"Get lock settings"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeDeviceSettings":{"title":"TedeeDeviceSettings","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeDeviceSettings"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeDeviceSettings","navigatorTitle":[{"kind":"identifier","text":"TedeeDeviceSettings"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeedevicesettings","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockSettings(from:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockSettings(from:)","abstract":[{"text":"Get lock settings","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockSettings","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14DeviceSettingsV","kind":"typeIdentifier","text":"TedeeDeviceSettings"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getlocksettings(from:)","title":"getLockSettings(from:)","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json index 79f7fef..35e631e 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/getlockstate(_:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Get current lock state"}],"seeAlsoSections":[{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)"],"generated":true}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"}],"symbolKind":"method","role":"symbol","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","title":"getLockState(_:)","externalID":"s:9TedeeLock0aB7ManagerC03getB5StateyAA0abE0VAA0A12SerialNumberVYaKF"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)"]}],"sections":[],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockState","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]}],"kind":"declarations"},{"parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}]}],"kind":"parameters"},{"kind":"content","content":[{"level":2,"text":"Return Value","type":"heading","anchor":"return-value"},{"inlineContent":[{"text":"Current lock state received from the lock","type":"text"}],"type":"paragraph"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"seeAlsoSections":[{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)"],"generated":true}],"abstract":[{"type":"text","text":"Get current lock state"}],"metadata":{"symbolKind":"method","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier","text":"TedeeLockState"}],"externalID":"s:9TedeeLock0aB7ManagerC03getB5StateyAA0abE0VAA0A12SerialNumberVYaKF","role":"symbol","title":"getLockState(_:)","roleHeading":"Instance Method","extendedModule":"TedeeLock"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockState","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV"}],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"text":"Serial number of the lock","type":"text"}]}]}]},{"kind":"content","content":[{"text":"Return Value","anchor":"return-value","level":2,"type":"heading"},{"type":"paragraph","inlineContent":[{"text":"Current lock state received from the lock","type":"text"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json b/docs/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json index 1721efc..a1c63b5 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/getversion(from:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"symbolKind":"method","modules":[{"name":"TedeeLock"}],"extendedModule":"TedeeLock","role":"symbol","roleHeading":"Instance Method","title":"getVersion(from:)","externalID":"s:9TedeeLock0aB7ManagerC10getVersion4fromAA0a8SoftwareE0VAA0A12SerialNumberV_tYaKF"},"kind":"symbol","abstract":[{"type":"text","text":"Get firmware version"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"getVersion","kind":"identifier"},{"kind":"text","text":"("},{"text":"from","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSoftwareVersion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}]}]},{"kind":"content","content":[{"type":"heading","text":"Return Value","level":2,"anchor":"return-value"},{"inlineContent":[{"type":"text","text":"Responds with lock firmware version data"}],"type":"paragraph"}]},{"kind":"content","content":[{"anchor":"discussion","level":2,"text":"Discussion","type":"heading"},{"items":[{"content":[{"inlineContent":[{"type":"text","text":"Parameter: serialNumber: Serial number of the lock"}],"type":"paragraph"}]}],"type":"unorderedList"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getVersion"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","kind":"typeIdentifier","text":"TedeeSoftwareVersion"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","kind":"symbol","title":"getVersion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","role":"symbol","abstract":[{"type":"text","text":"Get firmware version"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"}}} \ No newline at end of file +{"sections":[],"abstract":[{"type":"text","text":"Get firmware version"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"getVersion"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"from"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"languages":["swift"],"platforms":["macOS"]}]},{"kind":"content","content":[{"text":"Return Value","anchor":"return-value","type":"heading","level":2},{"inlineContent":[{"type":"text","text":"Responds with lock firmware version data"}],"type":"paragraph"}]},{"kind":"content","content":[{"type":"heading","anchor":"discussion","text":"Discussion","level":2},{"items":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Parameter: serialNumber: Serial number of the lock","type":"text"}]}]}],"type":"unorderedList"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC10getVersion4fromAA0a8SoftwareE0VAA0A12SerialNumberV_tYaKF","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV","text":"TedeeSoftwareVersion","kind":"typeIdentifier"}],"symbolKind":"method","extendedModule":"TedeeLock","role":"symbol","title":"getVersion(from:)"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","interfaceLanguage":"swift"},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getVersion(from:)":{"abstract":[{"text":"Get firmware version","type":"text"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/getversion(from:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getVersion(from:)","type":"topic","title":"getVersion(from:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getVersion","kind":"identifier"},{"text":"(","kind":"text"},{"text":"from","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSoftwareVersion","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A15SoftwareVersionV"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json index ae127ca..8043171 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/isconnected(_:).json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)"]}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"title":"isConnected(_:)","externalID":"s:9TedeeLock0aB7ManagerC11isConnectedySbAA0A12SerialNumberVYaF","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","symbolKind":"method","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)"},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"generated":true,"title":"Connection"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","abstract":[{"text":"Subscribe to this stream to receive updates about lock connection status","type":"text"}],"title":"connectionStatusStream","kind":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<"},{"kind":"typeIdentifier","text":"TedeeConnectionStatus","preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV"},{"kind":"text","text":">"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","title":"connect(_:certificate:keepConnection:)","abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A11CertificateV","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","title":"isConnected(_:)","abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"title":"disconnect(_:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","role":"article","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isConnected"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"role":"symbol","title":"isConnected(_:)","symbolKind":"method","roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC11isConnectedySbAA0A12SerialNumberVYaF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream"],"title":"Connection"}],"abstract":[{"text":"This method allows to check if particular lock is connected","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/disconnect(_:)":{"abstract":[{"text":"This method allows to disconnect with connected lock.","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/disconnect(_:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"disconnect","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/disconnect(_:)","title":"disconnect(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/isConnected(_:)":{"abstract":[{"type":"text","text":"This method allows to check if particular lock is connected"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/isConnected(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"isConnected","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"isConnected(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/isconnected(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connectionStatusStream":{"abstract":[{"type":"text","text":"Subscribe to this stream to receive updates about lock connection status"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connectionStatusStream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"connectionStatusStream","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"text":"<","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A16ConnectionStatusV","text":"TedeeConnectionStatus","kind":"typeIdentifier"},{"kind":"text","text":">"}],"title":"connectionStatusStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/connectionstatusstream","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/How-to-connect-to-the-Lock":{"abstract":[{"type":"text","text":"From this article you will know what steps are required to connect to the Lock"}],"role":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/How-to-connect-to-the-Lock","kind":"article","url":"\/documentation\/tedeelock\/how-to-connect-to-the-lock","title":"How to connect to the Lock?"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/connect(_:certificate:keepConnection:)":{"abstract":[{"type":"text","text":"Method to find and connect to the Lock via bluetooth."},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 30 seconds and after that it will failed with notFound error","type":"text"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/connect(_:certificate:keepConnection:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"connect","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"certificate","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A11CertificateV","kind":"typeIdentifier","text":"TedeeCertificate"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"keepConnection"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/connect(_:certificate:keepconnection:)","title":"connect(_:certificate:keepConnection:)"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json b/docs/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json index 63866da..fb44620 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/notificationsstream.json @@ -1 +1 @@ -{"abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}],"seeAlsoSections":[{"title":"Comunication","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)"],"generated":true}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"lazy","kind":"keyword"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"text":"AsyncStream","preciseIdentifier":"s:ScS","kind":"typeIdentifier"},{"text":"<(","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")> { ","kind":"text"},{"text":"get","kind":"keyword"},{"text":" ","kind":"text"},{"text":"set","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"]}]},{"kind":"content","content":[{"type":"heading","anchor":"return-value","level":2,"text":"Return Value"},{"inlineContent":[{"type":"text","text":""},{"text":" ","type":"text"},{"type":"text","text":"- "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","type":"reference","isActive":true},{"text":": contains serial number and notification send by the lock","type":"text"}],"type":"paragraph"}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"metadata":{"role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:ScS","kind":"typeIdentifier","text":"AsyncStream"},{"kind":"text","text":"<("},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification","kind":"typeIdentifier"},{"text":")>","kind":"text"}],"title":"notificationsStream","symbolKind":"property","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC19notificationsStreamScSyAA0A12NotificationVGvp"},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")>","kind":"text"}],"abstract":[{"type":"text","text":"Subscribe to this stream to receive bluetooth notifications send by the lock"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","role":"symbol","abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"title":"sendCommand(_:command:parameters:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameters"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]?)"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream"]}],"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"seeAlsoSections":[{"title":"Comunication","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)"],"generated":true}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"lazy","kind":"keyword"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","text":"TedeeNotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")> { ","kind":"text"},{"text":"get","kind":"keyword"},{"kind":"text","text":" "},{"text":"set","kind":"keyword"},{"text":" }","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"},{"content":[{"text":"Return Value","type":"heading","level":2,"anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":""},{"type":"text","text":" "},{"text":"- ","type":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","isActive":true,"type":"reference"},{"text":": contains serial number and notification send by the lock","type":"text"}]}],"kind":"content"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"title":"notificationsStream","symbolKind":"property","roleHeading":"Instance Property","externalID":"s:9TedeeLock0aB7ManagerC19notificationsStreamScSyAA0A12NotificationVGvp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notificationsStream"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"text":"TedeeNotification","preciseIdentifier":"s:9TedeeLock0A12NotificationV","kind":"typeIdentifier"},{"kind":"text","text":")>"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","interfaceLanguage":"swift"},"abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification"},{"text":")>","kind":"text"}],"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"title":"sendCommand(_:command:parameters:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"This method allows to send command to the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json b/docs/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json index 5f3fc8e..04af0e2 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/openlock(_:parameter:).json @@ -1 +1 @@ -{"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","interfaceLanguage":"swift"},"abstract":[{"text":"Open lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"openLock"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":" = .none) ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"inlineContent":[{"text":"Serial number of the lock","type":"text"}],"type":"paragraph"}]},{"name":"parameter","content":[{"inlineContent":[{"text":"Specify the behavour of the open lock action","type":"text"}],"type":"paragraph"}]}]},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"inlineContent":[{"text":"Response from the lock with either success or reason why open lock action cannot be performed by the lock","type":"text"}],"type":"paragraph"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC04openB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF","symbolKind":"method","title":"openLock(_:parameter:)","role":"symbol","extendedModule":"TedeeLock","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"openLock"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeLockOperationParameters","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier"}],"roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":" = .none) ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"languages":["swift"]}],"kind":"declarations"},{"parameters":[{"name":"serialNumber","content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Specify the behavour of the open lock action"}]}],"name":"parameter"}],"kind":"parameters"},{"kind":"content","content":[{"level":2,"type":"heading","anchor":"return-value","text":"Return Value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock with either success or reason why open lock action cannot be performed by the lock","type":"text"}]}]}],"metadata":{"extendedModule":"TedeeLock","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}],"title":"openLock(_:parameter:)","externalID":"s:9TedeeLock0aB7ManagerC04openB0_9parameterAA0aB15OperationResultOAA0A12SerialNumberV_AA0abF10ParametersOtYaKF","modules":[{"name":"TedeeLock"}],"symbolKind":"method","roleHeading":"Instance Method","role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)"],"traits":[{"interfaceLanguage":"swift"}]}],"seeAlsoSections":[{"title":"Commands","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"generated":true}],"abstract":[{"text":"Open lock","type":"text"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json b/docs/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json index 35dea69..3b88505 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/preconditionisolated(_:file:line:).json @@ -1 +1 @@ -{"metadata":{"role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["_Concurrency"]}],"roleHeading":"Instance Method","platforms":[{"introducedAt":"13.0","name":"iOS","beta":false,"unavailable":false,"deprecated":false},{"name":"macOS","beta":false,"deprecated":false,"introducedAt":"10.15","unavailable":false},{"name":"tvOS","unavailable":false,"deprecated":false,"beta":false,"introducedAt":"13.0"},{"introducedAt":"6.0","unavailable":false,"deprecated":false,"beta":false,"name":"watchOS"}],"extendedModule":"_Concurrency","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"preconditionIsolated","kind":"identifier"},{"text":"(() -> ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","kind":"typeIdentifier","text":"UInt"},{"kind":"text","text":")"}],"title":"preconditionIsolated(_:file:line:)","externalID":"s:ScA12_ConcurrencyE20preconditionIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","symbolKind":"method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Actor.preconditionIsolated(_:file:line:)"},{"type":"text","text":"."}],"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)"]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n","kind":"text"},{"text":"nonisolated","kind":"attribute"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"message"},{"kind":"text","text":": "},{"text":"@autoclosure ","kind":"attribute"},{"text":"() -> ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":" = String(), "},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"text":"StaticString","kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","preciseIdentifier":"s:Su","kind":"typeIdentifier"},{"text":" = ","kind":"text"},{"text":"#line","kind":"keyword"},{"kind":"text","text":")"}]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"title":"preconditionIsolated(_:file:line:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"file"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"line"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","abstract":[],"title":"Actor Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"sections":[],"metadata":{"modules":[{"relatedModules":["_Concurrency"],"name":"TedeeLock"}],"title":"preconditionIsolated(_:file:line:)","externalID":"s:ScA12_ConcurrencyE20preconditionIsolated_4file4lineySSyXK_s12StaticStringVSutF::SYNTHESIZED::s:9TedeeLock0aB7ManagerC","platforms":[{"deprecated":false,"beta":false,"introducedAt":"13.0","unavailable":false,"name":"iOS"},{"beta":false,"unavailable":false,"name":"macOS","introducedAt":"10.15","deprecated":false},{"introducedAt":"13.0","deprecated":false,"name":"tvOS","unavailable":false,"beta":false},{"name":"watchOS","beta":false,"introducedAt":"6.0","deprecated":false,"unavailable":false}],"roleHeading":"Instance Method","extendedModule":"_Concurrency","role":"symbol","symbolKind":"method","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"kind":"text","text":"(() -> "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"text":", ","kind":"text"},{"text":"file","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:s12StaticStringV","text":"StaticString"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt","kind":"typeIdentifier","preciseIdentifier":"s:Su"},{"text":")","kind":"text"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"text","text":"@backDeployed(before: macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0)\n"},{"kind":"attribute","text":"nonisolated"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"preconditionIsolated","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"message","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"attribute","text":"@autoclosure "},{"text":"() -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":" = String(), ","kind":"text"},{"kind":"externalParam","text":"file"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s12StaticStringV","text":"StaticString","kind":"typeIdentifier"},{"kind":"text","text":" = "},{"kind":"keyword","text":"#fileID"},{"text":", ","kind":"text"},{"text":"line","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt","preciseIdentifier":"s:Su","kind":"typeIdentifier"},{"kind":"text","text":" = "},{"text":"#line","kind":"keyword"},{"kind":"text","text":")"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations"]]},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Actor.preconditionIsolated(_:file:line:)"},{"type":"text","text":"."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/Actor-Implementations":{"role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockmanager\/actor-implementations","abstract":[],"title":"Actor Implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/Actor-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/preconditionIsolated(_:file:line:)":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/preconditionIsolated(_:file:line:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/preconditionisolated(_:file:line:)","type":"topic","kind":"symbol","title":"preconditionIsolated(_:file:line:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"preconditionIsolated"},{"text":"(() -> ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"file","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"StaticString","preciseIdentifier":"s:s12StaticStringV"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"line"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Su","text":"UInt","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/publickey.json b/docs/data/documentation/tedeelock/tedeelockmanager/publickey.json index edeaa1b..cafa2d1 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/publickey.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/publickey.json @@ -1 +1 @@ -{"abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","seeAlsoSections":[{"title":"Configuration","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"title":"publicKey","role":"symbol","symbolKind":"property","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"roleHeading":"Type Property","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC9publicKeySSvpZ"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/publickey"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"publicKey","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"text":" { ","kind":"text"},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"],"title":"Configuration"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","interfaceLanguage":"swift"},"abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Type Property","symbolKind":"property","externalID":"s:9TedeeLock0aB7ManagerC9publicKeySSvpZ","title":"publicKey"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"publicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":" { ","kind":"text"},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/publickey"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json index eafc834..e45fc37 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/pulllock(_:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Pull lock"}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"generated":true,"title":"Commands"}],"kind":"symbol","metadata":{"symbolKind":"method","title":"pullLock(_:)","role":"symbol","modules":[{"name":"TedeeLock"}],"extendedModule":"TedeeLock","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"roleHeading":"Instance Method","externalID":"s:9TedeeLock0aB7ManagerC04pullB0yAA0aB15OperationResultOAA0A12SerialNumberVYaKF"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullLock"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"serialNumber"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationResult","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"}]}]},{"kind":"parameters","parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}],"name":"serialNumber"}]},{"kind":"content","content":[{"text":"Return Value","type":"heading","level":2,"anchor":"return-value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock with either success or reason why pull lock action cannot be performed by the lock","type":"text"}]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","kind":"typeIdentifier","text":"TedeeLockOperationParameters"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","role":"symbol","abstract":[{"type":"text","text":"Close lock"}],"title":"closeLock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"abstract":[{"type":"text","text":"Open lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"openLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameter"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult"}],"title":"openLock(_:parameter:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"abstract":[{"type":"text","text":"Pull lock"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"pullLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"abstract":[{"type":"text","text":"Get current lock state"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState","kind":"typeIdentifier"}],"title":"getLockState(_:)"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"method","extendedModule":"TedeeLock","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pullLock","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult"}],"title":"pullLock(_:)","roleHeading":"Instance Method","role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC04pullB0yAA0aB15OperationResultOAA0A12SerialNumberVYaKF"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","interfaceLanguage":"swift"},"kind":"symbol","abstract":[{"type":"text","text":"Pull lock"}],"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)"],"title":"Commands"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","kind":"typeIdentifier","text":"TedeeLockOperationResult","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"}]}]},{"kind":"parameters","parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number of the lock"}]}],"name":"serialNumber"}]},{"kind":"content","content":[{"text":"Return Value","level":2,"type":"heading","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock with either success or reason why pull lock action cannot be performed by the lock","type":"text"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/closeLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"closeLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/closelock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/closeLock(_:parameter:)","abstract":[{"type":"text","text":"Close lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"closeLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"TedeeLockOperationParameters","preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB15OperationResultO","text":"TedeeLockOperationResult","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/openLock(_:parameter:)":{"role":"symbol","kind":"symbol","title":"openLock(_:parameter:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/openlock(_:parameter:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/openLock(_:parameter:)","abstract":[{"type":"text","text":"Open lock"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"openLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"parameter","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB19OperationParametersO","text":"TedeeLockOperationParameters","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/pullLock(_:)":{"role":"symbol","kind":"symbol","title":"pullLock(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/pulllock(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/pullLock(_:)","abstract":[{"type":"text","text":"Pull lock"}],"type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"pullLock"},{"text":"(","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB15OperationResultO"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/getLockState(_:)":{"role":"symbol","kind":"symbol","title":"getLockState(_:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/getlockstate(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/getLockState(_:)","abstract":[{"text":"Get current lock state","type":"text"}],"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"getLockState","kind":"identifier"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json b/docs/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json index 492e2bf..2e524d0 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/registerlock(_:registration:).json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","interfaceLanguage":"swift"},"metadata":{"symbolKind":"method","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"registerLock"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","text":"TedeeRegisterLock"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"extendedModule":"TedeeLock","externalID":"s:9TedeeLock0aB7ManagerC08registerB0_12registrationyAA0A12SerialNumberV_AA0a8RegisterB0VtYaKF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"registerLock(_:registration:)","roleHeading":"Instance Method"},"kind":"symbol","abstract":[{"type":"text","text":"Register the lock"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"registerLock"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"registration"},{"text":": ","kind":"text"},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"languages":["swift"]}]},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"text":"Serial number of the lock","type":"text"}],"type":"paragraph"}],"name":"serialNumber"},{"name":"registration","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Data returned by the Tedee Api after adding new lock"}]}]}]},{"kind":"content","content":[{"level":2,"text":"Return Value","type":"heading","anchor":"return-value"},{"inlineContent":[{"text":"Upon success, lock witll be automaticlly disconnect and should be ready to establish secure connection.","type":"text"}],"type":"paragraph"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"abstract":[{"text":"Register the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","title":"registerLock(_:registration:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"registerLock","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"kind":"text","text":", "},{"kind":"externalParam","text":"registration"},{"kind":"text","text":": "},{"text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}]}]},{"parameters":[{"content":[{"inlineContent":[{"type":"text","text":"Serial number of the lock"}],"type":"paragraph"}],"name":"serialNumber"},{"name":"registration","content":[{"inlineContent":[{"text":"Data returned by the Tedee Api after adding new lock","type":"text"}],"type":"paragraph"}]}],"kind":"parameters"},{"kind":"content","content":[{"type":"heading","text":"Return Value","anchor":"return-value","level":2},{"inlineContent":[{"type":"text","text":"Upon success, lock witll be automaticlly disconnect and should be ready to establish secure connection."}],"type":"paragraph"}]}],"abstract":[{"text":"Register the lock","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"registerLock"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V","text":"TedeeRegisterLock"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}],"role":"symbol","symbolKind":"method","extendedModule":"TedeeLock","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Method","title":"registerLock(_:registration:)","externalID":"s:9TedeeLock0aB7ManagerC08registerB0_12registrationyAA0A12SerialNumberV_AA0a8RegisterB0VtYaKF"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","url":"\/documentation\/tedeelock\/tedeeserialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"abstract":[{"type":"text","text":"Used for identification of the lock."}],"type":"topic","navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/registerLock(_:registration:)":{"type":"topic","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"registerLock","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"registration","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeRegisterLock","preciseIdentifier":"s:9TedeeLock0a8RegisterB0V"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}],"title":"registerLock(_:registration:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/registerlock(_:registration:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/registerLock(_:registration:)","abstract":[{"text":"Register the lock","type":"text"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json b/docs/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json index d444027..3194488 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/sendcommand(_:command:parameters:).json @@ -1 +1 @@ -{"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"],"generated":true,"title":"Comunication"}],"abstract":[{"text":"This method allows to send command to the lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"metadata":{"externalID":"s:9TedeeLock0aB7ManagerC11sendCommand_7command10parameterss5UInt8V_SayAHGSgtAA0A12SerialNumberV_AhItYaKF","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":", "},{"text":"command","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"parameters","kind":"externalParam"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"]) ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> ("},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"role":"symbol","symbolKind":"method","extendedModule":"TedeeLock","roleHeading":"Instance Method","title":"sendCommand(_:command:parameters:)","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)"]}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"command","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameters"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"] = []) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", ["},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"]?)","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"text":"Serial number of the connected device","type":"text"}]}]},{"name":"command","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"command that will be send to the lock"}]}]},{"name":"parameters","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"optional parameters that will be send alongside the command"}]}]}]},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"inlineContent":[{"text":"Response from the lock and optionally array of additional data returned by the lock","type":"text"}],"type":"paragraph"}],"kind":"content"},{"content":[{"text":"Discussion","anchor":"discussion","level":2,"type":"heading"},{"name":"Throws","type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notConnected, TedeeLockManager.Errors.cantSendCommand, TedeeLockManager.Errors.cantParseResponse, TedeeLockManager.Errors.waitingForResponse","type":"text"}]}]}],"kind":"content"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notificationsStream"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:ScS","text":"AsyncStream"},{"kind":"text","text":"<("},{"text":"TedeeNotification","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV"},{"text":")>","kind":"text"}],"abstract":[{"type":"text","text":"Subscribe to this stream to receive bluetooth notifications send by the lock"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","role":"symbol","abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"title":"sendCommand(_:command:parameters:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"sendCommand"},{"kind":"text","text":"("},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", "},{"kind":"externalParam","text":"parameters"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":"]?)"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"sendCommand","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"parameters"},{"kind":"text","text":": ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"] = []) ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> ("},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", [","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"]?)"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"serialNumber","content":[{"type":"paragraph","inlineContent":[{"text":"Serial number of the connected device","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"command that will be send to the lock","type":"text"}]}],"name":"command"},{"name":"parameters","content":[{"type":"paragraph","inlineContent":[{"text":"optional parameters that will be send alongside the command","type":"text"}]}]}]},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"text":"Response from the lock and optionally array of additional data returned by the lock","type":"text"}]}]},{"kind":"content","content":[{"type":"heading","anchor":"discussion","text":"Discussion","level":2},{"name":"Throws","type":"aside","style":"note","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notConnected, TedeeLockManager.Errors.cantSendCommand, TedeeLockManager.Errors.cantParseResponse, TedeeLockManager.Errors.waitingForResponse","type":"text"}]}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)"]}],"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream"],"generated":true,"title":"Comunication"}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"This method allows to send command to the lock"}],"metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"sendCommand","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":", "},{"kind":"externalParam","text":"command"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"kind":"text","text":"]) "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":", ["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"symbolKind":"method","roleHeading":"Instance Method","extendedModule":"TedeeLock","title":"sendCommand(_:command:parameters:)","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC11sendCommand_7command10parameterss5UInt8V_SayAHGSgtAA0A12SerialNumberV_AhItYaKF","role":"symbol"},"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/notificationsStream":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"notificationsStream","kind":"identifier"},{"kind":"text","text":": "},{"text":"AsyncStream","kind":"typeIdentifier","preciseIdentifier":"s:ScS"},{"kind":"text","text":"<("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV","text":"TedeeNotification"},{"text":")>","kind":"text"}],"title":"notificationsStream","url":"\/documentation\/tedeelock\/tedeelockmanager\/notificationsstream","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/notificationsStream","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Subscribe to this stream to receive bluetooth notifications send by the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/sendCommand(_:command:parameters:)":{"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"sendCommand"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"command"},{"kind":"text","text":": "},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"parameters","kind":"externalParam"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]) ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> (","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":", [","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":"]?)","kind":"text"}],"title":"sendCommand(_:command:parameters:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/sendCommand(_:command:parameters:)","url":"\/documentation\/tedeelock\/tedeelockmanager\/sendcommand(_:command:parameters:)","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"This method allows to send command to the lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json index e927100..11d28a8 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/setsigneddatetimeprovider(_:).json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}],"metadata":{"symbolKind":"method","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC25setSignedDateTimeProvideryyAA0aefgH0_pSgF","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"setSignedDateTimeProvider","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP"},{"kind":"text","text":"?)"}],"title":"setSignedDateTimeProvider(_:)"},"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey"],"title":"Configuration","generated":true}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"_"},{"kind":"text","text":" "},{"kind":"internalParam","text":"provider"},{"kind":"text","text":": "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"kind":"text","text":"?)"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"}}} \ No newline at end of file +{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"},"abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"title":"Configuration","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey"],"generated":true}],"metadata":{"roleHeading":"Instance Method","title":"setSignedDateTimeProvider(_:)","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC25setSignedDateTimeProvideryyAA0aefgH0_pSgF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"role":"symbol","symbolKind":"method"},"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"setSignedDateTimeProvider","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"provider","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","kind":"typeIdentifier","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"title":"TedeeLockManager","abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/shared.json b/docs/data/documentation/tedeelock/tedeelockmanager/shared.json index 78790f0..35116b7 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/shared.json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/shared.json @@ -1 +1 @@ -{"kind":"symbol","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","text":"TedeeLockManager","kind":"typeIdentifier"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/shared"]}],"metadata":{"title":"shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"externalID":"s:9TedeeLock0aB7ManagerC6sharedACvpZ","symbolKind":"property","role":"symbol","roleHeading":"Type Property","modules":[{"name":"TedeeLock"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","interfaceLanguage":"swift"},"seeAlsoSections":[{"title":"Configuration","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"type":"topic","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC"}],"title":"shared","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"title":"setSignedDateTimeProvider(_:)","type":"topic","abstract":[{"type":"text","text":"Set an object that provide signed date time for lock when needed"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"title":"publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","kind":"symbol","abstract":[{"type":"text","text":"Returns public key or generare new one if it wasn’t generated before"}],"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]}}} \ No newline at end of file +{"kind":"symbol","metadata":{"roleHeading":"Type Property","symbolKind":"property","externalID":"s:9TedeeLock0aB7ManagerC6sharedACvpZ","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"shared"},{"text":": ","kind":"text"},{"text":"TedeeLockManager","preciseIdentifier":"s:9TedeeLock0aB7ManagerC","kind":"typeIdentifier"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockmanager\/shared"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"shared"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","text":"TedeeLockManager","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"seeAlsoSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)"],"title":"Configuration","generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/shared":{"title":"shared","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/shared","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/shared","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"shared","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0aB7ManagerC","text":"TedeeLockManager","kind":"typeIdentifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/setSignedDateTimeProvider(_:)":{"title":"setSignedDateTimeProvider(_:)","abstract":[{"text":"Set an object that provide signed date time for lock when needed","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager\/setsigneddatetimeprovider(_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/setSignedDateTimeProvider(_:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"setSignedDateTimeProvider"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A22SignedDateTimeProviderP","text":"TedeeSignedDateTimeProvider"},{"text":"?)","kind":"text"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/publicKey":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/publicKey","url":"\/documentation\/tedeelock\/tedeelockmanager\/publickey","title":"publicKey","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"publicKey"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"text":"Returns public key or generare new one if it wasn’t generated before","type":"text"}],"kind":"symbol","role":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json b/docs/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json index ae2400f..60acd7c 100644 --- a/docs/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json +++ b/docs/data/documentation/tedeelock/tedeelockmanager/unsecureconnect(_:).json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB7ManagerC15unsecureConnectyyAA0A12SerialNumberVYaKF","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unsecureConnect"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"method","extendedModule":"TedeeLock","roleHeading":"Instance Method","title":"unsecureConnect(_:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"type":"text","text":"Method to find and unsecurely connect to the Lock via bluetooth."},{"text":" ","type":"text"},{"text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unsecureConnect","kind":"identifier"},{"kind":"text","text":"("},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"}]}]},{"kind":"content","content":[{"text":"Discussion","anchor":"discussion","level":2,"type":"heading"},{"name":"Throws","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected"}]}],"style":"note","type":"aside"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"text":"class","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockManager"}],"abstract":[{"text":"Main class responsible for connection and communication with the Lock.","type":"text"}],"title":"TedeeLockManager","type":"topic","url":"\/documentation\/tedeelock\/tedeelockmanager","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockManager"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"kind":"symbol","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error"}],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","title":"unsecureConnect(_:)"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unsecureConnect","kind":"identifier"},{"text":"(","kind":"text"},{"text":"_","kind":"externalParam"},{"kind":"text","text":" "},{"kind":"internalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"}],"languages":["swift"],"platforms":["macOS"]}]},{"content":[{"text":"Discussion","level":2,"anchor":"discussion","type":"heading"},{"content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager.Errors.notFound, TedeeLockManager.Errors.systemPermissions, TedeeLockManager.Errors.deviceNotInitialized, TedeeLockManager.Errors.alreadyConnecting, TedeeLockManager.Errors.alreadyConnected, TedeeLockManager.Errors.disconnected","type":"text"}]}],"style":"note","type":"aside","name":"Throws"}],"kind":"content"}],"metadata":{"role":"symbol","title":"unsecureConnect(_:)","symbolKind":"method","extendedModule":"TedeeLock","roleHeading":"Instance Method","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB7ManagerC15unsecureConnectyyAA0A12SerialNumberVYaKF","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unsecureConnect","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"}]},"sections":[],"kind":"symbol","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"text":" ","type":"text"},{"type":"text","text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockManager"}],"url":"\/documentation\/tedeelock\/tedeelockmanager","navigatorTitle":[{"text":"TedeeLockManager","kind":"identifier"}],"role":"symbol","title":"TedeeLockManager","abstract":[{"type":"text","text":"Main class responsible for connection and communication with the Lock."}],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockManager/unsecureConnect(_:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockManager\/unsecureConnect(_:)","abstract":[{"text":"Method to find and unsecurely connect to the Lock via bluetooth.","type":"text"},{"type":"text","text":" "},{"text":"This method will try to find the device for up to 10 seconds and after that it will failed with notFound error","type":"text"}],"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unsecureConnect"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"}],"url":"\/documentation\/tedeelock\/tedeelockmanager\/unsecureconnect(_:)","title":"unsecureConnect(_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters.json index 50c6329..cde8cd1 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters"]}],"kind":"symbol","metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"enum","roleHeading":"Enumeration","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"title":"TedeeLockOperationParameters","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}],"externalID":"s:9TedeeLock0aB19OperationParametersO"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"],"generated":true,"title":"Default Implementations"}],"relationshipsSections":[{"kind":"relationships","title":"Conforms To","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/SQ":{"title":"Swift.Equatable","identifier":"doc:\/\/TedeeLock\/SQ","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","kind":"article","abstract":[],"title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","title":"TedeeLockOperationParameters.auto","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"auto","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","type":"topic","title":"TedeeLockOperationParameters.autoWhenLockedThenPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoWhenLockedThenPull"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","kind":"symbol","type":"topic","title":"init(rawValue:)","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","type":"topic","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","kind":"symbol","title":"TedeeLockOperationParameters.autoNeverPull"},"doc://TedeeLock/SH":{"title":"Swift.Hashable","identifier":"doc:\/\/TedeeLock\/SH","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","role":"symbol","title":"TedeeLockOperationParameters.force","type":"topic","abstract":[{"type":"text","text":"Forces lock to unlock lock till jam."},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.autoAlwaysPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"abstract":[],"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations","title":"RawRepresentable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"kind":"symbol","title":"TedeeLockOperationParameters.withoutPull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"withoutPull"}],"abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"abstract":[{"type":"text","text":"default behaviour of lock operation"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","title":"TedeeLockOperationParameters.none","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}]},"doc://TedeeLock/SY":{"title":"Swift.RawRepresentable","identifier":"doc:\/\/TedeeLock\/SY","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","kind":"symbol","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}]}}} \ No newline at end of file +{"sections":[],"metadata":{"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"symbolKind":"enum","externalID":"s:9TedeeLock0aB19OperationParametersO","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}],"role":"symbol","roleHeading":"Enumeration","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters"},"kind":"symbol","relationshipsSections":[{"type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"],"kind":"relationships","title":"Conforms To"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull"],"title":"Enumeration Cases"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"],"generated":true,"title":"Default Implementations"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationParameters","kind":"identifier"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","title":"init(rawValue:)","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":")"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"withoutPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.withoutPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"title":"TedeeLockOperationParameters.autoWhenLockedThenPull","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull"},"doc://TedeeLock/SH":{"identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/SQ":{"identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","title":"TedeeLockOperationParameters.force","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","type":"topic","abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"title":"TedeeLockOperationParameters.none","abstract":[{"type":"text","text":"default behaviour of lock operation"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","title":"TedeeLockOperationParameters.auto","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","type":"topic","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","title":"TedeeLockOperationParameters.autoAlwaysPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","abstract":[],"title":"RawRepresentable Implementations","type":"topic","role":"collectionGroup","kind":"article","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"},"doc://TedeeLock/SY":{"type":"unresolvable","title":"Swift.RawRepresentable","identifier":"doc:\/\/TedeeLock\/SY"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","title":"TedeeLockOperationParameters.autoNeverPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoNeverPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json index a5857f2..3f970b4 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/!=(_:_:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations"]]},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","symbolKind":"op","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","extendedModule":"Swift","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","roleHeading":"Operator"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)"},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","abstract":[{"text":"Inherited from ","type":"text"},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","kind":"article","abstract":[],"title":"Equatable Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","abstract":[],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations"]]},"sections":[],"metadata":{"extendedModule":"Swift","role":"symbol","roleHeading":"Operator","symbolKind":"op","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/Equatable-Implementations":{"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"title":"!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/auto.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/auto.json index c88af75..e8a329e 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/auto.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/auto.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockOperationParameters.auto","externalID":"s:9TedeeLock0aB19OperationParametersO4autoyA2CmF"},"sections":[],"abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/auto"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","title":"TedeeLockOperationParameters.auto","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"auto","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto"},"sections":[],"metadata":{"title":"TedeeLockOperationParameters.auto","role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB19OperationParametersO4autoyA2CmF","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/auto"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/auto":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/auto","title":"TedeeLockOperationParameters.auto","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"auto","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/auto","type":"topic","abstract":[{"text":"Perform open lock action from auto unlock feature","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json index 17f8d53..d87b472 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoalwayspull.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"metadata":{"roleHeading":"Case","role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"externalID":"s:9TedeeLock0aB19OperationParametersO14autoAlwaysPullyA2CmF","title":"TedeeLockOperationParameters.autoAlwaysPull"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.autoAlwaysPull"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"kind":"symbol","metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters.autoAlwaysPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoAlwaysPull"}],"externalID":"s:9TedeeLock0aB19OperationParametersO14autoAlwaysPullyA2CmF","roleHeading":"Case","symbolKind":"case"},"sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoAlwaysPull"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoAlwaysPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoalwayspull","title":"TedeeLockOperationParameters.autoAlwaysPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoAlwaysPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoAlwaysPull","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json index 2bd9880..b410814 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autoneverpull.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"languages":["swift"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","interfaceLanguage":"swift"},"sections":[],"metadata":{"title":"TedeeLockOperationParameters.autoNeverPull","externalID":"s:9TedeeLock0aB19OperationParametersO13autoNeverPullyA2CmF","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","kind":"symbol","title":"TedeeLockOperationParameters.autoNeverPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoNeverPull","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB19OperationParametersO13autoNeverPullyA2CmF","symbolKind":"case","roleHeading":"Case","role":"symbol","title":"TedeeLockOperationParameters.autoNeverPull"},"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoNeverPull"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoNeverPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autoneverpull","title":"TedeeLockOperationParameters.autoNeverPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoNeverPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoNeverPull","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json index c59ac85..661fecf 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenlockedthenpull.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB19OperationParametersO22autoWhenLockedThenPullyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoWhenLockedThenPull"}],"title":"TedeeLockOperationParameters.autoWhenLockedThenPull"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","type":"topic","title":"TedeeLockOperationParameters.autoWhenLockedThenPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"autoWhenLockedThenPull"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB19OperationParametersO22autoWhenLockedThenPullyA2CmF","roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.autoWhenLockedThenPull","role":"symbol","symbolKind":"case"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenLockedThenPull":{"title":"TedeeLockOperationParameters.autoWhenLockedThenPull","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenLockedThenPull","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenlockedthenpull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenLockedThenPull","kind":"identifier"}],"role":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json index ec17dd7..2d102a0 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/autowhenunlockedthenpull.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}]}],"kind":"declarations"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"Case","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}],"externalID":"s:9TedeeLock0aB19OperationParametersO24autoWhenUnlockedThenPullyA2CmF","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","modules":[{"name":"TedeeLock"}],"role":"symbol"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull"]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","kind":"symbol","abstract":[],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"roleHeading":"Case","externalID":"s:9TedeeLock0aB19OperationParametersO24autoWhenUnlockedThenPullyA2CmF","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}],"title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull","symbolKind":"case"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"autoWhenUnlockedThenPull"}],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/autoWhenUnlockedThenPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/autowhenunlockedthenpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/autoWhenUnlockedThenPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"autoWhenUnlockedThenPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.autoWhenUnlockedThenPull"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json index 31f3076..6395094 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/equatable-implementations.json @@ -1 +1 @@ -{"kind":"article","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)"],"generated":true,"title":"Operators"}],"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Equatable Implementations"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","abstract":[],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"sections":[],"kind":"article","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/Equatable-Implementations","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"roleHeading":"API Collection","role":"collectionGroup","modules":[{"name":"TedeeLock"}],"title":"Equatable Implementations"},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)"],"generated":true}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/!=(_:_:)":{"title":"!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/!=(_:_:)","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/!=(_:_:)"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/force.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/force.json index 2bdd6d0..16de2d1 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/force.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/force.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/force"]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"force"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force"},"sections":[],"abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}],"metadata":{"title":"TedeeLockOperationParameters.force","externalID":"s:9TedeeLock0aB19OperationParametersO5forceyA2CmF","modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"force"}],"roleHeading":"Case"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","role":"symbol","title":"TedeeLockOperationParameters.force","type":"topic","abstract":[{"type":"text","text":"Forces lock to unlock lock till jam."},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"sections":[],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB19OperationParametersO5forceyA2CmF","symbolKind":"case","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters.force","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"force"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"force","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/force"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/force":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/force","title":"TedeeLockOperationParameters.force","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"force","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/force","type":"topic","abstract":[{"text":"Forces lock to unlock lock till jam.","type":"text"},{"type":"text","text":" "},{"type":"text","text":"Should be used only in emergency case."}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json index cff067d..2f6b11e 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/hash(into:).json @@ -1 +1 @@ -{"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","interfaceLanguage":"swift"},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"into"},{"text":" ","kind":"text"},{"text":"hasher","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}]}],"kind":"declarations"}],"metadata":{"title":"hash(into:)","conformance":{"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}]},"extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"symbolKind":"method","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"text":"(","kind":"text"},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}],"role":"symbol","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","roleHeading":"Instance Method"},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"abstract":[{"type":"text","text":"Inherited from "},{"code":"RawRepresentable.hash(into:)","type":"codeVoice"},{"type":"text","text":"."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"abstract":[],"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations","title":"RawRepresentable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","title":"hash(into:)","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"into"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"kind":"text","text":")"}],"type":"topic","abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"metadata":{"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","roleHeading":"Instance Method","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"kind":"externalParam","text":"into"},{"text":": ","kind":"text"},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","preciseIdentifier":"s:s6HasherV","kind":"typeIdentifier"},{"kind":"text","text":")"}],"extendedModule":"Swift","title":"hash(into:)","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}]},"symbolKind":"method"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)"},"sections":[],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hash(into:)"},{"text":".","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"into"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"hasher"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","abstract":[],"title":"RawRepresentable Implementations","type":"topic","role":"collectionGroup","kind":"article","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"text":"Available when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","title":"hash(into:)"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json index f93e2b1..fcabc10 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/hashvalue.json @@ -1 +1 @@ -{"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":" { ","kind":"text"},{"kind":"keyword","text":"get"},{"text":" }","kind":"text"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"},"abstract":[{"type":"text","text":"Inherited from "},{"code":"RawRepresentable.hashValue","type":"codeVoice"},{"type":"text","text":"."}],"metadata":{"symbolKind":"property","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}],"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}]},"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"extendedModule":"Swift","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","role":"symbol","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"title":"hashValue","roleHeading":"Instance Property"},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"conformance":{"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}]},"kind":"symbol","abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue","type":"topic","title":"hashValue","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"abstract":[],"kind":"article","role":"collectionGroup","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations","title":"RawRepresentable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue","interfaceLanguage":"swift"},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"RawRepresentable.hashValue","type":"codeVoice"},{"type":"text","text":"."}],"sections":[],"metadata":{"conformance":{"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}]},"symbolKind":"property","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"role":"symbol","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB19OperationParametersO","title":"hashValue","roleHeading":"Instance Property"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"text":" { ","kind":"text"},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/RawRepresentable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","abstract":[],"title":"RawRepresentable Implementations","type":"topic","role":"collectionGroup","kind":"article","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"kind":"symbol","title":"hashValue","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json index d96ad98..1d37909 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/init(rawvalue:).json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)"]}],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.init(rawValue:)"},{"type":"text","text":"."}],"kind":"symbol","metadata":{"role":"symbol","roleHeading":"Initializer","symbolKind":"init","title":"init(rawValue:)","externalID":"s:9TedeeLock0aB19OperationParametersO8rawValueACSgs5UInt8V_tcfc","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":")","kind":"text"}],"modules":[{"name":"TedeeLock"}]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","kind":"symbol","type":"topic","title":"init(rawValue:)","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","role":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"text":"?(","kind":"text"},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:s5UInt8V","text":"UInt8","kind":"typeIdentifier"},{"text":")","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"metadata":{"symbolKind":"init","role":"symbol","externalID":"s:9TedeeLock0aB19OperationParametersO8rawValueACSgs5UInt8V_tcfc","title":"init(rawValue:)","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"roleHeading":"Initializer"},"abstract":[{"type":"text","text":"Inherited from "},{"code":"RawRepresentable.init(rawValue:)","type":"codeVoice"},{"type":"text","text":"."}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"role":"collection","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/init(rawValue:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/init(rawvalue:)","title":"init(rawValue:)","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"kind":"text","text":")"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/init(rawValue:)","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/none.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/none.json index 55b9afc..8d67877 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/none.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/none.json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0aB19OperationParametersO4noneyA2CmF","title":"TedeeLockOperationParameters.none","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"none","kind":"identifier"}],"symbolKind":"case","modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"type":"text","text":"default behaviour of lock operation"}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"none","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/none"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"abstract":[{"type":"text","text":"default behaviour of lock operation"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","title":"TedeeLockOperationParameters.none","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"abstract":[{"text":"default behaviour of lock operation","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/none"]}],"metadata":{"title":"TedeeLockOperationParameters.none","roleHeading":"Case","role":"symbol","externalID":"s:9TedeeLock0aB19OperationParametersO4noneyA2CmF","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"none"}],"symbolKind":"case"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/none":{"title":"TedeeLockOperationParameters.none","abstract":[{"type":"text","text":"default behaviour of lock operation"}],"kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"none"}],"type":"topic","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/none","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/none"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json index 00be907..6da4132 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/rawrepresentable-implementations.json @@ -1 +1 @@ -{"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"],"generated":true,"title":"Instance Properties"},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)"],"title":"Instance Methods"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"metadata":{"modules":[{"name":"TedeeLock"}],"title":"RawRepresentable Implementations","role":"collectionGroup","roleHeading":"API Collection"},"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"conformance":{"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}]},"kind":"symbol","abstract":[],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue","type":"topic","title":"hashValue","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","title":"hash(into:)","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"into"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"kind":"text","text":")"}],"type":"topic","abstract":[]}}} \ No newline at end of file +{"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","role":"collectionGroup","title":"RawRepresentable Implementations"},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"article","sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/rawrepresentable-implementations"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue"],"generated":true,"title":"Instance Properties"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)"],"generated":true,"title":"Instance Methods"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hashValue":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":".","type":"text"}],"availabilityPrefix":[{"type":"text","text":"Available when"}],"conformancePrefix":[{"text":"Conforms when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hashValue","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"kind":"symbol","title":"hashValue","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hashvalue"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/hash(into:)":{"abstract":[],"role":"symbol","type":"topic","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"text":"Available when","type":"text"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/hash(into:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Hasher","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/hash(into:)","title":"hash(into:)"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json index 6ad8193..046c1bc 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/unlockorpull.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull"},"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"title":"TedeeLockOperationParameters.unlockOrPull","externalID":"s:9TedeeLock0aB19OperationParametersO12unlockOrPullyA2CmF","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case","roleHeading":"Case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlockOrPull","kind":"identifier"}],"platforms":["macOS"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","type":"topic","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"symbolKind":"case","roleHeading":"Case","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationParameters.unlockOrPull","externalID":"s:9TedeeLock0aB19OperationParametersO12unlockOrPullyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockOrPull"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockOrPull"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/unlockOrPull":{"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/unlockorpull","title":"TedeeLockOperationParameters.unlockOrPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlockOrPull","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/unlockOrPull","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json b/docs/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json index ebe974a..558442a 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationparameters/withoutpull.json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0aB19OperationParametersO11withoutPullyA2CmF","roleHeading":"Case","title":"TedeeLockOperationParameters.withoutPull","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"withoutPull","kind":"identifier"}],"symbolKind":"case","modules":[{"name":"TedeeLock"}],"role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"withoutPull"}],"languages":["swift"]}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"kind":"symbol","type":"topic","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationParameters","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"kind":"symbol","title":"TedeeLockOperationParameters.withoutPull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"withoutPull"}],"abstract":[],"type":"topic"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"withoutPull"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","interfaceLanguage":"swift"},"metadata":{"role":"symbol","title":"TedeeLockOperationParameters.withoutPull","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB19OperationParametersO11withoutPullyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"withoutPull","kind":"identifier"}],"symbolKind":"case"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters/withoutPull":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters\/withoutpull","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters\/withoutPull","abstract":[],"type":"topic","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"withoutPull","kind":"identifier"}],"role":"symbol","title":"TedeeLockOperationParameters.withoutPull"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationParameters":{"url":"\/documentation\/tedeelock\/tedeelockoperationparameters","title":"TedeeLockOperationParameters","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationParameters"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationParameters","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationParameters"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult.json b/docs/data/documentation/tedeelock/tedeelockoperationresult.json index 64cd1dd..5a177d0 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult.json @@ -1 +1 @@ -{"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"],"generated":true,"title":"Default Implementations"}],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult"]}],"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"symbolKind":"enum","externalID":"s:9TedeeLock0aB15OperationResultO","roleHeading":"Enumeration","role":"symbol","title":"TedeeLockOperationResult","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}]},"relationshipsSections":[{"kind":"relationships","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"],"title":"Conforms To"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","title":"TedeeLockOperationResult.noPermission","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"noPermission"}],"type":"topic","abstract":[{"text":"No permission to send command to lock","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","title":"TedeeLockOperationResult.busy","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"busy"}],"type":"topic","abstract":[{"text":"Lock is currently performing other operations. Wait for changing state.","type":"text"}]},"doc://TedeeLock/SH":{"title":"Swift.Hashable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"type":"topic","abstract":[{"text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","title":"TedeeLockOperationResult.notConfigured","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConfigured"}],"type":"topic","abstract":[{"text":". Lock auto pull spring feature is turned off.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","abstract":[{"text":"Invalid params passed to lock.","type":"text"}],"title":"TedeeLockOperationResult.invalidParameter","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/SY":{"title":"Swift.RawRepresentable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SY"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}],"type":"topic","abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"notCalibrated","kind":"identifier"}],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"dismounted"}],"title":"TedeeLockOperationResult.dismounted"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"title":"TedeeLockOperationResult.error","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"abstract":[{"text":"Error occured.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"abstract":[{"text":"Operation accepted.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"symbolKind":"enum","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockOperationResult"}],"roleHeading":"Enumeration","externalID":"s:9TedeeLock0aB15OperationResultO","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}]},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)"],"title":"Initializers"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"],"generated":true}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult"]}],"relationshipsSections":[{"type":"conformsTo","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/SY"],"title":"Conforms To"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"},"sections":[],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","abstract":[{"type":"text","text":"Lock is currently performing other operations. Wait for changing state."}],"title":"TedeeLockOperationResult.busy","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"busy"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","title":"TedeeLockOperationResult.noPermission","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","abstract":[{"type":"text","text":"No permission to send command to lock"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","title":"TedeeLockOperationResult.error","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","abstract":[{"type":"text","text":"Error occured."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":")"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","abstract":[]},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"title":"TedeeLockOperationResult.invalidParameter","kind":"symbol","abstract":[{"type":"text","text":"Invalid params passed to lock."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","title":"Equatable Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notCalibrated"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","abstract":[],"role":"collectionGroup","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","title":"TedeeLockOperationResult.dismounted","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}]},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","abstract":[{"type":"text","text":". Lock auto pull spring feature is turned off."}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"notConfigured"}],"kind":"symbol","title":"TedeeLockOperationResult.notConfigured"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","kind":"symbol","abstract":[{"type":"text","text":"Operation accepted."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success"},"doc://TedeeLock/SY":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SY","title":"Swift.RawRepresentable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","abstract":[{"type":"text","text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter)."}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","type":"topic","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json index ae50ebd..e3cf30b 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/!=(_:_:).json @@ -1 +1 @@ -{"sections":[],"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","extendedModule":"Swift","roleHeading":"Operator","role":"symbol","title":"!=(_:_:)","symbolKind":"op","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","interfaceLanguage":"swift"},"kind":"symbol","abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"title":"!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)"},"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations"]]},"metadata":{"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","roleHeading":"Operator","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"extendedModule":"Swift","title":"!=(_:_:)","role":"symbol","symbolKind":"op"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Inherited from "},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"text":".","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/Equatable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations","type":"topic","title":"Equatable Implementations","kind":"article","role":"collectionGroup","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/busy.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/busy.json index 71c070b..93743f3 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/busy.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/busy.json @@ -1 +1 @@ -{"metadata":{"roleHeading":"Case","modules":[{"name":"TedeeLock"}],"role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO4busyyA2CmF","symbolKind":"case","title":"TedeeLockOperationResult.busy","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/busy"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","interfaceLanguage":"swift"},"abstract":[{"text":"Lock is currently performing other operations. Wait for changing state.","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","title":"TedeeLockOperationResult.busy","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"busy"}],"type":"topic","abstract":[{"text":"Lock is currently performing other operations. Wait for changing state.","type":"text"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationResult.busy","symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO4busyyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}],"roleHeading":"Case"},"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"busy","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/busy"]}],"kind":"symbol","abstract":[{"type":"text","text":"Lock is currently performing other operations. Wait for changing state."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/busy":{"role":"symbol","abstract":[{"type":"text","text":"Lock is currently performing other operations. Wait for changing state."}],"title":"TedeeLockOperationResult.busy","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/busy","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/busy","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"busy"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json index f09cfa9..8740040 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/dismounted.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO10dismountedyA2CmF","symbolKind":"case","title":"TedeeLockOperationResult.dismounted","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"dismounted"}],"roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"dismounted","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"dismounted"}],"title":"TedeeLockOperationResult.dismounted"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"kind":"symbol","abstract":[{"text":"Lock is not mounted on doors.","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"languages":["swift"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO10dismountedyA2CmF","roleHeading":"Case","symbolKind":"case","title":"TedeeLockOperationResult.dismounted","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/dismounted":{"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/dismounted","title":"TedeeLockOperationResult.dismounted","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/dismounted","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"dismounted","kind":"identifier"}],"abstract":[{"text":"Lock is not mounted on doors.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json index 3a3e962..22a2e05 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/equatable-implementations.json @@ -1 +1 @@ -{"kind":"article","sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)"],"title":"Operators"}],"metadata":{"role":"collectionGroup","title":"Equatable Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"title":"!=(_:_:)"}}} \ No newline at end of file +{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/Equatable-Implementations","interfaceLanguage":"swift"},"kind":"article","schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Equatable Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)"],"title":"Operators","generated":true}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/!=(_:_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/!=(_:_:)","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/error.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/error.json index 346ad49..2425acd 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/error.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/error.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"abstract":[{"text":"Error occured.","type":"text"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"error","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/error"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","interfaceLanguage":"swift"},"kind":"symbol","metadata":{"symbolKind":"case","roleHeading":"Case","title":"TedeeLockOperationResult.error","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"error","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO5erroryA2CmF","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"title":"TedeeLockOperationResult.error","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"abstract":[{"text":"Error occured.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error"},"kind":"symbol","sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"title":"TedeeLockOperationResult.error","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO5erroryA2CmF","roleHeading":"Case"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"error","kind":"identifier"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/error"]}],"abstract":[{"type":"text","text":"Error occured."}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/error":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/error","title":"TedeeLockOperationResult.error","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"error"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/error","abstract":[{"type":"text","text":"Error occured."}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json b/docs/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json index 77d68c6..10315f4 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/hash(into:).json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hash(into:)"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)"]}],"sections":[],"metadata":{"extendedModule":"Swift","symbolKind":"method","title":"hash(into:)","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","conformance":{"conformancePrefix":[{"text":"Conforms when","type":"text"}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":"."}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hash"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"kind":"text","text":" "},{"preciseIdentifier":"s:s6HasherV","text":"Hasher","kind":"typeIdentifier"},{"text":")","kind":"text"}],"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Method"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"text":"(","kind":"text"},{"text":"into","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"hasher","kind":"internalParam"},{"kind":"text","text":": "},{"text":"inout","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Hasher","kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV"},{"text":")","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"role":"symbol","title":"hash(into:)","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}],"kind":"symbol","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"into"},{"text":" ","kind":"text"},{"kind":"internalParam","text":"hasher"},{"text":": ","kind":"text"},{"text":"inout","kind":"keyword"},{"kind":"text","text":" "},{"preciseIdentifier":"s:s6HasherV","text":"Hasher","kind":"typeIdentifier"},{"text":")","kind":"text"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)"]}],"abstract":[{"text":"Inherited from ","type":"text"},{"code":"RawRepresentable.hash(into:)","type":"codeVoice"},{"type":"text","text":"."}],"sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"title":"hash(into:)","symbolKind":"method","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE4hash4intoys6HasherVz_tF::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}],"availabilityPrefix":[{"type":"text","text":"Available when"}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"hash"},{"text":"(","kind":"text"},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV"},{"kind":"text","text":")"}],"roleHeading":"Instance Method","extendedModule":"Swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","abstract":[],"role":"collectionGroup","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)","title":"hash(into:)","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","preciseIdentifier":"s:s6HasherV","kind":"typeIdentifier"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json index 14f4ade..1af3b39 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/hashvalue.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","interfaceLanguage":"swift"},"kind":"symbol","abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hashValue"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"metadata":{"externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","role":"symbol","extendedModule":"Swift","roleHeading":"Instance Property","title":"hashValue","symbolKind":"property","conformance":{"availabilityPrefix":[{"type":"text","text":"Available when"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":"."}]},"fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"title":"hashValue","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue"]}],"metadata":{"extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"title":"hashValue","symbolKind":"property","externalID":"s:SYsSHRzSH8RawValueSYRpzrlE04hashB0Sivp::SYNTHESIZED::s:9TedeeLock0aB15OperationResultO","fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"kind":"identifier","text":"hashValue"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"roleHeading":"Instance Property","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}]}},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue"},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.hashValue"},{"text":".","type":"text"}],"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":" { "},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/RawRepresentable-Implementations":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","title":"RawRepresentable Implementations","abstract":[],"role":"collectionGroup","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","title":"hashValue","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json b/docs/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json index 70c687b..8f3e12c 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/init(rawvalue:).json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)"]}],"kind":"symbol","metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO8rawValueACSgs5UInt8V_tcfc","symbolKind":"init","modules":[{"name":"TedeeLock"}],"title":"init(rawValue:)","fragments":[{"text":"init","kind":"identifier"},{"text":"?(","kind":"text"},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"UInt8","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"roleHeading":"Initializer"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"RawRepresentable.init(rawValue:)"},{"type":"text","text":"."}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","role":"symbol","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"sections":[],"metadata":{"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"kind":"externalParam","text":"rawValue"},{"kind":"text","text":": "},{"text":"UInt8","preciseIdentifier":"s:s5UInt8V","kind":"typeIdentifier"},{"text":")","kind":"text"}],"role":"symbol","roleHeading":"Initializer","externalID":"s:9TedeeLock0aB15OperationResultO8rawValueACSgs5UInt8V_tcfc","symbolKind":"init","modules":[{"name":"TedeeLock"}],"title":"init(rawValue:)"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"schemaVersion":{"patch":0,"minor":3,"major":0},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"RawRepresentable.init(rawValue:)"},{"text":".","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":")","kind":"text"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/init(rawValue:)":{"title":"init(rawValue:)","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/init(rawvalue:)","type":"topic","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"?("},{"text":"rawValue","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":")"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/init(rawValue:)","kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json index 7c8aa83..9b4c396 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/invalidparameter.json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidParameter"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Invalid params passed to lock."}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"title":"TedeeLockOperationResult.invalidParameter","externalID":"s:9TedeeLock0aB15OperationResultO16invalidParameteryA2CmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidParameter"}],"roleHeading":"Case","role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"case"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter","abstract":[{"text":"Invalid params passed to lock.","type":"text"}],"title":"TedeeLockOperationResult.invalidParameter","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"abstract":[{"type":"text","text":"Invalid params passed to lock."}],"metadata":{"role":"symbol","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidParameter","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO16invalidParameteryA2CmF","title":"TedeeLockOperationResult.invalidParameter"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/invalidParameter":{"title":"TedeeLockOperationResult.invalidParameter","kind":"symbol","abstract":[{"type":"text","text":"Invalid params passed to lock."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/invalidparameter","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidParameter","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/invalidParameter"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json index 2a9ec12..f6cd589 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/nopermission.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission"]}],"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO12noPermissionyA2CmF","symbolKind":"case","role":"symbol","roleHeading":"Case","title":"TedeeLockOperationResult.noPermission","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"noPermission","kind":"identifier"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission"},"abstract":[{"text":"No permission to send command to lock","type":"text"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"noPermission"}]}]}],"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","title":"TedeeLockOperationResult.noPermission","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"noPermission"}],"type":"topic","abstract":[{"text":"No permission to send command to lock","type":"text"}]}}} \ No newline at end of file +{"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"noPermission"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission"},"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"abstract":[{"text":"No permission to send command to lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission"]}],"metadata":{"role":"symbol","symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO12noPermissionyA2CmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"title":"TedeeLockOperationResult.noPermission","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/noPermission":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/nopermission","title":"TedeeLockOperationResult.noPermission","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"noPermission","kind":"identifier"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/noPermission","abstract":[{"type":"text","text":"No permission to send command to lock"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json index cd6aa03..9a09b91 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/notcalibrated.json @@ -1 +1 @@ -{"kind":"symbol","metadata":{"roleHeading":"Case","title":"TedeeLockOperationResult.notCalibrated","role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB15OperationResultO13notCalibratedyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notCalibrated"}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"notCalibrated","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated"]}],"abstract":[{"type":"text","text":"Lock does not have calibration. Please calibrate the lock."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"notCalibrated","kind":"identifier"}],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notCalibrated","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"TedeeLockOperationResult.notCalibrated","roleHeading":"Case","externalID":"s:9TedeeLock0aB15OperationResultO13notCalibratedyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notCalibrated","kind":"identifier"}],"role":"symbol","symbolKind":"case","modules":[{"name":"TedeeLock"}]},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"abstract":[],"url":"\/documentation\/tedeelock\/tedeelockoperationresult","kind":"symbol","title":"TedeeLockOperationResult","role":"symbol","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeLockOperationResult","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notCalibrated":{"title":"TedeeLockOperationResult.notCalibrated","abstract":[{"text":"Lock does not have calibration. Please calibrate the lock.","type":"text"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notcalibrated","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notCalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notCalibrated"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json index 6113b23..e2b5173 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/notconfigured.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured"]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"notConfigured","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO13notConfiguredyA2CmF","title":"TedeeLockOperationResult.notConfigured","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConfigured","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"abstract":[{"text":". Lock auto pull spring feature is turned off.","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","title":"TedeeLockOperationResult.notConfigured","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notConfigured"}],"type":"topic","abstract":[{"text":". Lock auto pull spring feature is turned off.","type":"text"}]}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO13notConfiguredyA2CmF","role":"symbol","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"notConfigured","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationResult.notConfigured","roleHeading":"Case"},"abstract":[{"type":"text","text":". Lock auto pull spring feature is turned off."}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","interfaceLanguage":"swift"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notConfigured"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/notConfigured":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/notconfigured","abstract":[{"type":"text","text":". Lock auto pull spring feature is turned off."}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/notConfigured","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"notConfigured"}],"kind":"symbol","title":"TedeeLockOperationResult.notConfigured"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json index 106b02d..ccd625c 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/rawrepresentable-implementations.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue"],"generated":true},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"],"title":"Instance Methods"}],"kind":"article","sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"API Collection","role":"collectionGroup","title":"RawRepresentable Implementations","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"title":"hashValue","conformance":{"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","kind":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"hashValue","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"role":"symbol","title":"hash(into:)","conformance":{"constraints":[{"code":"Self","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":" and "},{"type":"codeVoice","code":"RawValue"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"availabilityPrefix":[{"text":"Available when","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s6HasherV","text":"Hasher"},{"text":")","kind":"text"}],"kind":"symbol","abstract":[],"type":"topic","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"title":"RawRepresentable Implementations","role":"collectionGroup","roleHeading":"API Collection"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/RawRepresentable-Implementations","interfaceLanguage":"swift"},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue"],"generated":true},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)"],"title":"Instance Methods","generated":true}],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/rawrepresentable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hash(into:)":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hash(into:)","title":"hash(into:)","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"type":"text","text":"Available when"}],"constraints":[{"code":"Self","type":"codeVoice"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":" and ","type":"text"},{"type":"codeVoice","code":"RawValue"},{"text":" conforms to ","type":"text"},{"type":"codeVoice","code":"Hashable"},{"text":".","type":"text"}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"hash","kind":"identifier"},{"kind":"text","text":"("},{"text":"into","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"keyword","text":"inout"},{"text":" ","kind":"text"},{"text":"Hasher","preciseIdentifier":"s:s6HasherV","kind":"typeIdentifier"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hash(into:)","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/hashValue":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/hashValue","title":"hashValue","type":"topic","role":"symbol","conformance":{"availabilityPrefix":[{"text":"Available when","type":"text"}],"constraints":[{"type":"codeVoice","code":"Self"},{"type":"text","text":" conforms to "},{"code":"Hashable","type":"codeVoice"},{"type":"text","text":" and "},{"code":"RawValue","type":"codeVoice"},{"type":"text","text":" conforms to "},{"type":"codeVoice","code":"Hashable"},{"type":"text","text":"."}],"conformancePrefix":[{"type":"text","text":"Conforms when"}]},"fragments":[{"kind":"keyword","text":"var"},{"text":" ","kind":"text"},{"text":"hashValue","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/hashvalue","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/success.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/success.json index 82d421e..6ab5536 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/success.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/success.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"externalID":"s:9TedeeLock0aB15OperationResultO7successyA2CmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","role":"symbol","title":"TedeeLockOperationResult.success","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"success","kind":"identifier"}]},"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Operation accepted."}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/success"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"abstract":[{"text":"Operation accepted.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Operation accepted."}],"metadata":{"title":"TedeeLockOperationResult.success","role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO7successyA2CmF","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"success"}]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"success","kind":"identifier"}],"platforms":["macOS"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/success"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/success":{"title":"TedeeLockOperationResult.success","kind":"symbol","abstract":[{"type":"text","text":"Operation accepted."}],"role":"symbol","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/success","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"success"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/success"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json index 209f562..7de1f9e 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyautounlock.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByAutounlock","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock"},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlockAlreadyCalledByAutounlock","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO31unlockAlreadyCalledByAutounlockyA2CmF","modules":[{"name":"TedeeLock"}],"role":"symbol"},"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"type":"topic","abstract":[{"text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"metadata":{"title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","modules":[{"name":"TedeeLock"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB15OperationResultO31unlockAlreadyCalledByAutounlockyA2CmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByAutounlock","kind":"identifier"}],"role":"symbol","roleHeading":"Case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByAutounlock":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyautounlock","title":"TedeeLockOperationResult.unlockAlreadyCalledByAutounlock","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByAutounlock"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByAutounlock","abstract":[{"type":"text","text":"Last unlock operation was auto unlock and it happened < 3min (current lock state does not matter)."}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json b/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json index a711b19..7cfdf04 100644 --- a/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json +++ b/docs/data/documentation/tedeelock/tedeelockoperationresult/unlockalreadycalledbyotheroperation.json @@ -1 +1 @@ -{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}],"metadata":{"roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}],"externalID":"s:9TedeeLock0aB15OperationResultO026unlockAlreadyCalledByOtherC0yA2CmF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","symbolKind":"case"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","interfaceLanguage":"swift"},"kind":"symbol","schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","abstract":[],"title":"TedeeLockOperationResult","role":"symbol","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockOperationResult"}],"type":"topic","navigatorTitle":[{"text":"TedeeLockOperationResult","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}],"type":"topic","abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}]}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation"},"abstract":[{"text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter).","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation"]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0aB15OperationResultO026unlockAlreadyCalledByOtherC0yA2CmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlockAlreadyCalledByOtherOperation"}]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult":{"url":"\/documentation\/tedeelock\/tedeelockoperationresult","title":"TedeeLockOperationResult","kind":"symbol","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeLockOperationResult"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockOperationResult","kind":"identifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockOperationResult/unlockAlreadyCalledByOtherOperation":{"kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockOperationResult\/unlockAlreadyCalledByOtherOperation","abstract":[{"type":"text","text":"Last unlock operation was different than auto unlock and it happened < 3min (current lock state does not matter)."}],"url":"\/documentation\/tedeelock\/tedeelockoperationresult\/unlockalreadycalledbyotheroperation","type":"topic","title":"TedeeLockOperationResult.unlockAlreadyCalledByOtherOperation","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlockAlreadyCalledByOtherOperation","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate.json b/docs/data/documentation/tedeelock/tedeelockstate.json index 0908286..717ae08 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate.json +++ b/docs/data/documentation/tedeelock/tedeelockstate.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"],"title":"Enumerations"}],"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeLockState","kind":"identifier"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"},"kind":"symbol","metadata":{"role":"symbol","title":"TedeeLockState","roleHeading":"Structure","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"navigatorTitle":[{"text":"TedeeLockState","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV","symbolKind":"struct"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","type":"topic","abstract":[{"text":"Actual state","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","kind":"symbol","role":"symbol","title":"state","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"state"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","title":"TedeeLockState","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","title":"stateStatus","abstract":[{"text":"Last lock state change status","type":"text"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"},"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"struct","navigatorTitle":[{"text":"TedeeLockState","kind":"identifier"}],"roleHeading":"Structure","externalID":"s:9TedeeLock0aB5StateV","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"title":"TedeeLockState","role":"symbol"},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","text":"Status","kind":"typeIdentifier"}],"title":"stateStatus","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Last lock state change status","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"abstract":[{"type":"text","text":"Actual state"}],"title":"state","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O","kind":"typeIdentifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json index b7114d9..25ee0a1 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"sections":[],"kind":"symbol","topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking"]},{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"],"title":"Default Implementations"}],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo"}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"State","kind":"identifier"}]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"},"metadata":{"externalID":"s:9TedeeLock0aB5StateV0C0O","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Enumeration","title":"TedeeLockState.State","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}],"navigatorTitle":[{"text":"State","kind":"identifier"}],"symbolKind":"enum"},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"partiallyUnlocked","kind":"identifier"}],"kind":"symbol","abstract":[],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","title":"TedeeLockState.State.partiallyUnlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"abstract":[],"type":"topic","title":"TedeeLockState.State.locked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","title":"TedeeLockState.State.unknown","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"title":"TedeeLockState.State.locking","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"locking"}]},"doc://TedeeLock/SH":{"title":"Swift.Hashable","identifier":"doc:\/\/TedeeLock\/SH","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"uncalibrated","kind":"identifier"}],"title":"TedeeLockState.State.uncalibrated","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","kind":"symbol","type":"topic","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"title":"TedeeLockState.State.pullSpring","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"role":"collectionGroup","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","type":"topic","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","title":"TedeeLockState.State.calibration","role":"symbol","kind":"symbol"},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"pulling"}],"title":"TedeeLockState.State.pulling","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","abstract":[],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic","title":"TedeeLockState.State.unlocking","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocking"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","abstract":[],"type":"topic","title":"TedeeLockState.State.unlocked","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlocked","kind":"identifier"}]}}} \ No newline at end of file +{"metadata":{"roleHeading":"Enumeration","externalID":"s:9TedeeLock0aB5StateV0C0O","navigatorTitle":[{"kind":"identifier","text":"State"}],"symbolKind":"enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeLockState.State","role":"symbol"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"State","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"sections":[],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking"],"title":"Enumeration Cases"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"],"generated":true}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","type":"topic","abstract":[],"title":"TedeeLockState.State.unknown"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"title":"TedeeLockState.State.calibration","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","abstract":[],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"kind":"symbol","title":"TedeeLockState.State.unlocking","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlocking","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"partiallyUnlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","type":"topic","abstract":[],"title":"TedeeLockState.State.partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"pullSpring","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","type":"topic","abstract":[],"title":"TedeeLockState.State.pullSpring"},"doc://TedeeLock/SH":{"title":"Swift.Hashable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"kind":"article","type":"topic","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","kind":"symbol","title":"TedeeLockState.State.locked","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"role":"symbol","type":"topic","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","title":"TedeeLockState.State.pulling","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"abstract":[],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","title":"TedeeLockState.State.uncalibrated"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","abstract":[],"title":"TedeeLockState.State.locking"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","title":"TedeeLockState.State.unlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","role":"symbol","kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json index faff6ad..4d59e60 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/!=(_:_:).json @@ -1 +1 @@ -{"metadata":{"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV0C0O","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"roleHeading":"Operator","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"role":"symbol","title":"!=(_:_:)","extendedModule":"Swift","symbolKind":"op"},"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"platforms":["macOS"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"role":"collectionGroup","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","type":"topic","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","abstract":[],"title":"!=(_:_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"]]},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV0C0O","roleHeading":"Operator","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"extendedModule":"Swift","title":"!=(_:_:)","role":"symbol","symbolKind":"op"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"},"sections":[],"abstract":[{"type":"text","text":"Inherited from "},{"code":"Equatable.!=(_:_:)","type":"codeVoice"},{"type":"text","text":"."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"abstract":[],"title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/Equatable-Implementations":{"kind":"article","type":"topic","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations","role":"collectionGroup","title":"Equatable Implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json index 3c4463d..707f1ef 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/calibration.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"calibration","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O11calibrationyA2EmF","roleHeading":"Case","symbolKind":"case","modules":[{"name":"TedeeLock"}],"title":"TedeeLockState.State.calibration","role":"symbol"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","title":"TedeeLockState.State.calibration","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"calibration","kind":"identifier"}],"languages":["swift"]}]}],"metadata":{"roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"calibration","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O11calibrationyA2EmF","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"TedeeLockState.State.calibration","symbolKind":"case"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/calibration":{"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"calibration","kind":"identifier"}],"title":"TedeeLockState.State.calibration","kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/calibration","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/calibration","abstract":[],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json index c3ec37a..201de6e 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/equatable-implementations.json @@ -1 +1 @@ -{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations"},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations"]}],"metadata":{"roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"role":"collectionGroup","title":"Equatable Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"topicSections":[{"generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"],"title":"Operators"}],"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","abstract":[],"title":"!=(_:_:)","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/equatable-implementations"]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"role":"collectionGroup","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}],"title":"Equatable Implementations"},"topicSections":[{"generated":true,"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/Equatable-Implementations","interfaceLanguage":"swift"},"sections":[],"kind":"article","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/!=(_:_:)":{"type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"abstract":[],"title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json index a1ae706..b70ebdb 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locked.json @@ -1 +1 @@ -{"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB5StateV0C0O6lockedyA2EmF","title":"TedeeLockState.State.locked","symbolKind":"case","role":"symbol","roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"locked","kind":"identifier"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"locked"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","interfaceLanguage":"swift"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"abstract":[],"type":"topic","title":"TedeeLockState.State.locked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"locked"}],"roleHeading":"Case","symbolKind":"case","title":"TedeeLockState.State.locked","externalID":"s:9TedeeLock0aB5StateV0C0O6lockedyA2EmF","role":"symbol"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"locked","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locked":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locked","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locked","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locked","kind":"symbol","title":"TedeeLockState.State.locked","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json index ae76d84..68ce161 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/locking.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"metadata":{"role":"symbol","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"symbolKind":"case","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O7lockingyA2EmF","title":"TedeeLockState.State.locking"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"locking"}]}],"kind":"declarations"}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking"]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"title":"TedeeLockState.State.locking","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"locking"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"symbolKind":"case","title":"TedeeLockState.State.locking","roleHeading":"Case","externalID":"s:9TedeeLock0aB5StateV0C0O7lockingyA2EmF","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"locking","kind":"identifier"}]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"languages":["swift"]}]}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/locking":{"kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"locking","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/locking","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/locking","role":"symbol","abstract":[],"title":"TedeeLockState.State.locking"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json index cbac711..b20974b 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/partiallyunlocked.json @@ -1 +1 @@ -{"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"partiallyUnlocked","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","metadata":{"symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"partiallyUnlocked","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O17partiallyUnlockedyA2EmF","roleHeading":"Case","role":"symbol","title":"TedeeLockState.State.partiallyUnlocked"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"partiallyUnlocked","kind":"identifier"}],"kind":"symbol","abstract":[],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","title":"TedeeLockState.State.partiallyUnlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked"]}],"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"partiallyUnlocked","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"partiallyUnlocked","kind":"identifier"}],"symbolKind":"case","role":"symbol","externalID":"s:9TedeeLock0aB5StateV0C0O17partiallyUnlockedyA2EmF","roleHeading":"Case","title":"TedeeLockState.State.partiallyUnlocked","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/partiallyUnlocked":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/partiallyUnlocked","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"partiallyUnlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/partiallyunlocked","type":"topic","abstract":[],"title":"TedeeLockState.State.partiallyUnlocked"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json index 52c107e..f3fdd3e 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pulling.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","interfaceLanguage":"swift"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"role":"symbol","title":"TedeeLockState.State.pulling","roleHeading":"Case","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB5StateV0C0O7pullingyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"pulling"}],"title":"TedeeLockState.State.pulling","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","abstract":[],"kind":"symbol","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"pulling"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"symbol","metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"pulling","kind":"identifier"}],"title":"TedeeLockState.State.pulling","externalID":"s:9TedeeLock0aB5StateV0C0O7pullingyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","roleHeading":"Case","role":"symbol"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pulling":{"role":"symbol","type":"topic","abstract":[],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pulling","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pulling","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pulling","title":"TedeeLockState.State.pulling","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json index 6b72ac6..2d5489b 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/pullspring.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV0C0O10pullSpringyA2EmF","title":"TedeeLockState.State.pullSpring","role":"symbol","roleHeading":"Case","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"pullSpring","kind":"identifier"}],"platforms":["macOS"]}]}],"sections":[],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","title":"TedeeLockState","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"title":"TedeeLockState.State.pullSpring","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"role":"symbol","title":"TedeeLockState.State.pullSpring","externalID":"s:9TedeeLock0aB5StateV0C0O10pullSpringyA2EmF","symbolKind":"case","roleHeading":"Case","modules":[{"name":"TedeeLock"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"pullSpring"}],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","interfaceLanguage":"swift"},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/pullSpring":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/pullSpring","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"pullSpring","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/pullspring","type":"topic","abstract":[],"title":"TedeeLockState.State.pullSpring"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json index 8013aaf..482e413 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/uncalibrated.json @@ -1 +1 @@ -{"kind":"symbol","metadata":{"symbolKind":"case","title":"TedeeLockState.State.uncalibrated","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"roleHeading":"Case","externalID":"s:9TedeeLock0aB5StateV0C0O12uncalibratedyA2EmF"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"uncalibrated","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"uncalibrated","kind":"identifier"}],"title":"TedeeLockState.State.uncalibrated","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","kind":"symbol","type":"topic","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"}}} \ No newline at end of file +{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"platforms":["macOS"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"externalID":"s:9TedeeLock0aB5StateV0C0O12uncalibratedyA2EmF","symbolKind":"case","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"role":"symbol","roleHeading":"Case","title":"TedeeLockState.State.uncalibrated"},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/uncalibrated":{"abstract":[],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/uncalibrated","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"uncalibrated"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/uncalibrated","title":"TedeeLockState.State.uncalibrated"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json index 4336c82..9335010 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unknown.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unknown","kind":"identifier"}]}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV0C0O7unknownyA2EmF","title":"TedeeLockState.State.unknown","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unknown","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"sections":[],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","role":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","title":"TedeeLockState.State.unknown","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"externalID":"s:9TedeeLock0aB5StateV0C0O7unknownyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unknown","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","title":"TedeeLockState.State.unknown"},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unknown","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unknown":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unknown","kind":"symbol","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unknown"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unknown","type":"topic","abstract":[],"title":"TedeeLockState.State.unknown"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json index 5a8c08f..73fe940 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocked.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked"]}],"sections":[],"kind":"symbol","metadata":{"roleHeading":"Case","symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV0C0O8unlockedyA2EmF","title":"TedeeLockState.State.unlocked","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlocked","kind":"identifier"}]},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocked","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","abstract":[],"type":"topic","title":"TedeeLockState.State.unlocked","kind":"symbol","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"unlocked","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked"},"sections":[],"metadata":{"fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocked","kind":"identifier"}],"title":"TedeeLockState.State.unlocked","role":"symbol","symbolKind":"case","roleHeading":"Case","externalID":"s:9TedeeLock0aB5StateV0C0O8unlockedyA2EmF","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocked","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocked":{"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocked"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocked","title":"TedeeLockState.State.unlocked","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocked","role":"symbol","kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json index 5979a3f..709ed04 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.enum/unlocking.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","interfaceLanguage":"swift"},"metadata":{"symbolKind":"case","title":"TedeeLockState.State.unlocking","externalID":"s:9TedeeLock0aB5StateV0C0O9unlockingyA2EmF","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlocking"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"unlocking"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic","title":"TedeeLockState.State.unlocking","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"unlocking"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"unlocking","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","interfaceLanguage":"swift"},"metadata":{"title":"TedeeLockState.State.unlocking","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"unlocking","kind":"identifier"}],"externalID":"s:9TedeeLock0aB5StateV0C0O9unlockingyA2EmF","modules":[{"name":"TedeeLock"}],"symbolKind":"case","roleHeading":"Case","role":"symbol"},"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum/unlocking":{"kind":"symbol","title":"TedeeLockState.State.unlocking","role":"symbol","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum\/unlocking","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"unlocking","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum\/unlocking","type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.property.json b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.property.json index b410c9c..b4504b9 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/state-swift.property.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/state-swift.property.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"metadata":{"symbolKind":"property","title":"state","externalID":"s:9TedeeLock0aB5StateV5stateAC0C0Ovp","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"state","kind":"identifier"},{"text":": ","kind":"text"},{"text":"State","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property"},"sections":[],"abstract":[{"type":"text","text":"Actual state"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","type":"topic","abstract":[{"text":"Actual state","type":"text"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","kind":"symbol","role":"symbol","title":"state","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"state"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"State"}],"role":"symbol","title":"TedeeLockState.State","type":"topic","navigatorTitle":[{"kind":"identifier","text":"State"}]}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","interfaceLanguage":"swift"},"metadata":{"symbolKind":"property","title":"state","roleHeading":"Instance Property","externalID":"s:9TedeeLock0aB5StateV5stateAC0C0Ovp","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"kind":"text","text":": "},{"text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"kind":"text","text":": "},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","text":"State","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O"}],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"Actual state"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/state-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/State-swift.enum":{"navigatorTitle":[{"kind":"identifier","text":"State"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/State-swift.enum","role":"symbol","title":"TedeeLockState.State","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.enum","abstract":[],"kind":"symbol","type":"topic","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"State"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/state-swift.property":{"abstract":[{"type":"text","text":"Actual state"}],"title":"state","url":"\/documentation\/tedeelock\/tedeelockstate\/state-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/state-swift.property","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"state","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV0C0O","kind":"typeIdentifier","text":"State"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/statestatus.json b/docs/data/documentation/tedeelock/tedeelockstate/statestatus.json index e25387b..a496757 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/statestatus.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/statestatus.json @@ -1 +1 @@ -{"abstract":[{"text":"Last lock state change status","type":"text"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"stateStatus","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO"}]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/statestatus"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"sections":[],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"stateStatus"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","text":"Status","kind":"typeIdentifier"}],"title":"stateStatus","externalID":"s:9TedeeLock0aB5StateV11stateStatusAC0E0Ovp"},"schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","title":"stateStatus","abstract":[{"text":"Last lock state change status","type":"text"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"kind":"text","text":": "},{"text":"Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","kind":"typeIdentifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]}}} \ No newline at end of file +{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"abstract":[{"text":"Last lock state change status","type":"text"}],"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/statestatus"]}],"metadata":{"modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0aB5StateV11stateStatusAC0E0Ovp","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","kind":"typeIdentifier"}],"title":"stateStatus"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"stateStatus"},{"kind":"text","text":": "},{"text":"Status","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/stateStatus":{"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"stateStatus","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0aB5StateV6StatusO","text":"Status","kind":"typeIdentifier"}],"title":"stateStatus","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/stateStatus","url":"\/documentation\/tedeelock\/tedeelockstate\/statestatus","type":"topic","kind":"symbol","role":"symbol","abstract":[{"text":"Last lock state change status","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/status.json b/docs/data/documentation/tedeelock/tedeelockstate/status.json index ee9e04b..714de3a 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/status.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/status.json @@ -1 +1 @@ -{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"platforms":["macOS"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"title":"TedeeLockState.Status","role":"symbol","modules":[{"name":"TedeeLock"}],"navigatorTitle":[{"kind":"identifier","text":"Status"}],"externalID":"s:9TedeeLock0aB5StateV6StatusO","symbolKind":"enum"},"kind":"symbol","topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"]},{"generated":true,"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"]}],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"],"type":"conformsTo","title":"Conforms To"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"ok"}],"abstract":[],"title":"TedeeLockState.Status.ok","kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","url":"\/documentation\/tedeelock\/tedeelockstate","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","abstract":[],"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","title":"TedeeLockState","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"jammed"}],"abstract":[]},"doc://TedeeLock/SH":{"identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article","type":"topic","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","role":"collectionGroup"},"doc://TedeeLock/SQ":{"identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"metadata":{"symbolKind":"enum","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0aB5StateV6StatusO","roleHeading":"Enumeration","navigatorTitle":[{"text":"Status","kind":"identifier"}],"title":"TedeeLockState.Status"},"relationshipsSections":[{"title":"Conforms To","kind":"relationships","type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/SH"]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status"]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"],"title":"Enumeration Cases"},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"],"generated":true}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Status","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"type":"topic","abstract":[],"title":"Equatable Implementations","role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","abstract":[],"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"jammed","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/SQ":{"identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable","type":"unresolvable"},"doc://TedeeLock/SH":{"identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"title":"TedeeLockState.Status.ok","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ok","kind":"identifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json index 8af447e..496dd07 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeelockstate/status/!=(_:_:).json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)"},"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"title":"!=(_:_:)","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV6StatusO","role":"symbol","roleHeading":"Operator","modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"extendedModule":"Swift","symbolKind":"op"},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"title":"!=(_:_:)","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","role":"symbol","type":"topic","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article","type":"topic","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","role":"collectionGroup"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"title":"!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"roleHeading":"Operator","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0aB5StateV6StatusO","symbolKind":"op","extendedModule":"Swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"]]},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"type":"text","text":"."}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"type":"topic","abstract":[],"title":"!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/Equatable-Implementations":{"type":"topic","abstract":[],"title":"Equatable Implementations","role":"collectionGroup","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","kind":"article"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json index 690a4f3..2c82e75 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/status/equatable-implementations.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)"],"generated":true}],"sections":[],"metadata":{"title":"Equatable Implementations","role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations","interfaceLanguage":"swift"},"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"title":"!=(_:_:)","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","role":"symbol","type":"topic","kind":"symbol"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/Equatable-Implementations"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)"],"generated":true}],"metadata":{"title":"Equatable Implementations","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","role":"collectionGroup"},"kind":"article","references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/!=(_:_:)":{"type":"topic","abstract":[],"title":"!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/status/jammed.json b/docs/data/documentation/tedeelock/tedeelockstate/status/jammed.json index 93ff271..fbd6081 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/status/jammed.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/status/jammed.json @@ -1 +1 @@ -{"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/jammed"]}],"kind":"symbol","metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"jammed","kind":"identifier"}],"roleHeading":"Case","title":"TedeeLockState.Status.jammed","externalID":"s:9TedeeLock0aB5StateV6StatusO6jammedyA2EmF"},"schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"jammed"}],"platforms":["macOS"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"jammed"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]}}} \ No newline at end of file +{"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"sections":[],"metadata":{"externalID":"s:9TedeeLock0aB5StateV6StatusO6jammedyA2EmF","roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"jammed","kind":"identifier"}],"title":"TedeeLockState.Status.jammed","modules":[{"name":"TedeeLock"}],"role":"symbol"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"jammed"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/jammed"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/jammed":{"title":"TedeeLockState.Status.jammed","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/jammed","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/jammed","abstract":[],"type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"jammed","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeelockstate/status/ok.json b/docs/data/documentation/tedeelock/tedeelockstate/status/ok.json index 44c3148..403870f 100644 --- a/docs/data/documentation/tedeelock/tedeelockstate/status/ok.json +++ b/docs/data/documentation/tedeelock/tedeelockstate/status/ok.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"patch":0,"minor":3},"variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/ok"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"kind":"symbol","metadata":{"symbolKind":"case","title":"TedeeLockState.Status.ok","externalID":"s:9TedeeLock0aB5StateV6StatusO2okyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ok","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case"},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"ok","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"ok"}],"abstract":[],"title":"TedeeLockState.Status.ok","kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"title":"TedeeLockState.Status","url":"\/documentation\/tedeelock\/tedeelockstate\/status","navigatorTitle":[{"text":"Status","kind":"identifier"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Status"}],"abstract":[]}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"ok","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status"]]},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeelockstate\/status\/ok"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"ok"}],"title":"TedeeLockState.Status.ok","roleHeading":"Case","symbolKind":"case","externalID":"s:9TedeeLock0aB5StateV6StatusO2okyA2EmF","modules":[{"name":"TedeeLock"}]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status/ok":{"title":"TedeeLockState.Status.ok","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status\/ok","abstract":[],"url":"\/documentation\/tedeelock\/tedeelockstate\/status\/ok","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"ok","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState/Status":{"navigatorTitle":[{"kind":"identifier","text":"Status"}],"type":"topic","abstract":[],"title":"TedeeLockState.Status","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Status"}],"url":"\/documentation\/tedeelock\/tedeelockstate\/status","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState\/Status","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeenotification.json b/docs/data/documentation/tedeelock/tedeenotification.json index fd2a37e..9ecc47b 100644 --- a/docs/data/documentation/tedeelock/tedeenotification.json +++ b/docs/data/documentation/tedeelock/tedeenotification.json @@ -1 +1 @@ -{"sections":[],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}],"languages":["swift"]}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"title":"TedeeNotification","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeNotification"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","roleHeading":"Structure","externalID":"s:9TedeeLock0A12NotificationV","symbolKind":"struct"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification"]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"title":"serialNumber","url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","abstract":[{"type":"text","text":"Serial number of the lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification"}],"abstract":[{"type":"text","text":"Notification send by the lock"}],"title":"notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"],"title":"Enumerations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeNotification","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"metadata":{"externalID":"s:9TedeeLock0A12NotificationV","modules":[{"name":"TedeeLock"}],"title":"TedeeNotification","symbolKind":"struct","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeNotification"}],"navigatorTitle":[{"text":"TedeeNotification","kind":"identifier"}],"role":"symbol","roleHeading":"Structure"},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"title":"notification","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification","kind":"typeIdentifier"}],"abstract":[{"text":"Notification send by the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"abstract":[{"text":"Serial number of the lock","type":"text"}],"url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","title":"serialNumber","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"type":"topic","role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json index fafcc4d..9a0ec91 100644 --- a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json +++ b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum.json @@ -1 +1 @@ -{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)"],"title":"Enumeration Cases"}],"metadata":{"navigatorTitle":[{"text":"Notification","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A12NotificationV0C0O","title":"TedeeNotification.Notification","symbolKind":"enum","roleHeading":"Enumeration","fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"text":"Notification","kind":"identifier"}],"role":"symbol"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}],"title":"TedeeNotification.Notification.generic(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"lockState"},{"kind":"text","text":"("},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"TedeeNotification.Notification.lockState(_:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"roleHeading":"Enumeration","externalID":"s:9TedeeLock0A12NotificationV0C0O","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"title":"TedeeNotification.Notification","role":"symbol","symbolKind":"enum","navigatorTitle":[{"text":"Notification","kind":"identifier"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"sections":[],"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Notification"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","type":"topic","title":"TedeeNotification.Notification.generic(_:)","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"text":"([","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"])"}],"url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"lockState","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"},{"kind":"text","text":")"}],"title":"TedeeNotification.Notification.lockState(_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json index 52416f4..3f5f7b9 100644 --- a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json +++ b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/generic(_:).json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"text":"([","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}]}],"kind":"declarations"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"metadata":{"title":"TedeeNotification.Notification.generic(_:)","externalID":"s:9TedeeLock0A12NotificationV0C0O7genericyAESays5UInt8VGcAEmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"text":"([","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V","text":"UInt8"},{"text":"])","kind":"text"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}],"title":"TedeeNotification.Notification.generic(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"metadata":{"title":"TedeeNotification.Notification.generic(_:)","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"text":"])","kind":"text"}],"externalID":"s:9TedeeLock0A12NotificationV0C0O7genericyAESays5UInt8VGcAEmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","role":"symbol","symbolKind":"case"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"generic"},{"kind":"text","text":"(["},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"])"}],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/generic(_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/generic(_:)","type":"topic","title":"TedeeNotification.Notification.generic(_:)","abstract":[],"fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"generic","kind":"identifier"},{"text":"([","kind":"text"},{"text":"UInt8","kind":"typeIdentifier","preciseIdentifier":"s:s5UInt8V"},{"kind":"text","text":"])"}],"url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/generic(_:)"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json index b5c3bbd..00f579d 100644 --- a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json +++ b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.enum/lockstate(_:).json @@ -1 +1 @@ -{"metadata":{"title":"TedeeNotification.Notification.lockState(_:)","externalID":"s:9TedeeLock0A12NotificationV0C0O9lockStateyAeA0abE0VcAEmF","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"lockState","kind":"identifier"},{"text":"(","kind":"text"},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"lockState","kind":"identifier"},{"kind":"text","text":"("},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"title":"TedeeLockState","url":"\/documentation\/tedeelock\/tedeelockstate","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeLockState"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"abstract":[],"role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"lockState"},{"kind":"text","text":"("},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"TedeeNotification.Notification.lockState(_:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","interfaceLanguage":"swift"},"metadata":{"externalID":"s:9TedeeLock0A12NotificationV0C0O9lockStateyAeA0abE0VcAEmF","title":"TedeeNotification.Notification.lockState(_:)","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","symbolKind":"case","role":"symbol","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"lockState"},{"kind":"text","text":"("},{"text":"TedeeLockState","preciseIdentifier":"s:9TedeeLock0aB5StateV","kind":"typeIdentifier"},{"kind":"text","text":")"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"lockState","kind":"identifier"},{"text":"(","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV","text":"TedeeLockState"},{"text":")","kind":"text"}]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeLockState":{"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeLockState","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeLockState","kind":"identifier"}],"url":"\/documentation\/tedeelock\/tedeelockstate","abstract":[],"role":"symbol","title":"TedeeLockState","navigatorTitle":[{"kind":"identifier","text":"TedeeLockState"}],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum/lockState(_:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum\/lockstate(_:)","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"lockState","kind":"identifier"},{"kind":"text","text":"("},{"text":"TedeeLockState","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0aB5StateV"},{"kind":"text","text":")"}],"title":"TedeeNotification.Notification.lockState(_:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum\/lockState(_:)","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.property.json b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.property.json index 5680bad..4ca4bb6 100644 --- a/docs/data/documentation/tedeelock/tedeenotification/notification-swift.property.json +++ b/docs/data/documentation/tedeelock/tedeenotification/notification-swift.property.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","metadata":{"modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"notification","externalID":"s:9TedeeLock0A12NotificationV12notificationAC0C0Ovp","role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","kind":"typeIdentifier","text":"Notification"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"notification","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","text":"Notification","kind":"typeIdentifier"}]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property"},"sections":[],"abstract":[{"text":"Notification send by the lock","type":"text"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"title":"TedeeNotification.Notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","role":"symbol","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"Notification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification"}],"abstract":[{"type":"text","text":"Notification send by the lock"}],"title":"notification","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/notification-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"abstract":[{"text":"Notification send by the lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"}],"platforms":["macOS"],"languages":["swift"]}]}],"sections":[],"kind":"symbol","metadata":{"symbolKind":"property","title":"notification","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","kind":"typeIdentifier","text":"Notification"}],"role":"symbol","roleHeading":"Instance Property","externalID":"s:9TedeeLock0A12NotificationV12notificationAC0C0Ovp"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/Notification-swift.enum":{"title":"TedeeNotification.Notification","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Notification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"text":"Notification","kind":"identifier"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.enum","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/Notification-swift.enum"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/notification-swift.property":{"title":"notification","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"notification"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12NotificationV0C0O","text":"Notification","kind":"typeIdentifier"}],"abstract":[{"text":"Notification send by the lock","type":"text"}],"kind":"symbol","role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification\/notification-swift.property","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/notification-swift.property"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeenotification/serialnumber.json b/docs/data/documentation/tedeelock/tedeenotification/serialnumber.json index 8f5b4f2..3520a13 100644 --- a/docs/data/documentation/tedeelock/tedeenotification/serialnumber.json +++ b/docs/data/documentation/tedeelock/tedeenotification/serialnumber.json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Serial number of the lock"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","interfaceLanguage":"swift"},"metadata":{"title":"serialNumber","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"externalID":"s:9TedeeLock0A12NotificationV12serialNumberAA0a6SerialE0Vvp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"role":"symbol"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"serialNumber"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"}]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"title":"serialNumber","url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","abstract":[{"type":"text","text":"Serial number of the lock"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"title":"TedeeNotification","type":"topic","abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification","url":"\/documentation\/tedeelock\/tedeenotification","kind":"symbol","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeNotification"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"abstract":[{"type":"text","text":"Serial number of the lock"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"]]},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeenotification\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"roleHeading":"Instance Property","title":"serialNumber","role":"symbol","externalID":"s:9TedeeLock0A12NotificationV12serialNumberAA0a6SerialE0Vvp","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","text":"TedeeSerialNumber"}],"symbolKind":"property"},"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"}],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification":{"title":"TedeeNotification","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeNotification","kind":"identifier"}],"abstract":[],"kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeNotification"}],"role":"symbol","type":"topic","url":"\/documentation\/tedeelock\/tedeenotification","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeNotification/serialNumber":{"abstract":[{"text":"Serial number of the lock","type":"text"}],"url":"\/documentation\/tedeelock\/tedeenotification\/serialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeNotification\/serialNumber","title":"serialNumber","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"}],"type":"topic","role":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeregisterlock.json b/docs/data/documentation/tedeelock/tedeeregisterlock.json index 08c8758..9e0f155 100644 --- a/docs/data/documentation/tedeelock/tedeeregisterlock.json +++ b/docs/data/documentation/tedeelock/tedeeregisterlock.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock"]}],"kind":"symbol","metadata":{"symbolKind":"struct","title":"TedeeRegisterLock","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"roleHeading":"Structure","externalID":"s:9TedeeLock0a8RegisterB0V","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeRegisterLock"}],"languages":["swift"]}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","interfaceLanguage":"swift"},"sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)"],"title":"Initializers"},{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","type":"topic","title":"id","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"title":"authPublicKey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"authPublicKey"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"role":"symbol","title":"revision","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"title":"targetDeviceRevision","role":"symbol","abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","type":"topic","url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"role":"symbol","kind":"symbol","type":"topic","title":"init(revision:targetDeviceRevision:id:authPublicKey:)","url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"text":"id","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"authPublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":")","kind":"text"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision"],"title":"Instance Properties"}],"metadata":{"title":"TedeeRegisterLock","symbolKind":"struct","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"externalID":"s:9TedeeLock0a8RegisterB0V","modules":[{"name":"TedeeLock"}],"roleHeading":"Structure"},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"type":"topic","abstract":[],"title":"id","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"type":"topic","abstract":[],"title":"init(revision:targetDeviceRevision:id:authPublicKey:)","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"type":"topic","abstract":[],"title":"revision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"type":"topic","abstract":[],"title":"targetDeviceRevision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"targetDeviceRevision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"type":"topic","abstract":[],"title":"authPublicKey","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"authPublicKey","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json b/docs/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json index 21d0d1c..b6520a4 100644 --- a/docs/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json +++ b/docs/data/documentation/tedeelock/tedeeregisterlock/authpublickey.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey"]}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"authPublicKey","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","interfaceLanguage":"swift"},"sections":[],"metadata":{"roleHeading":"Instance Property","symbolKind":"property","title":"authPublicKey","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"externalID":"s:9TedeeLock0a8RegisterB0V13authPublicKeySSvp","modules":[{"name":"TedeeLock"}]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"title":"authPublicKey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","kind":"symbol","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"authPublicKey"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"authPublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey"]}],"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"title":"authPublicKey","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"authPublicKey","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","externalID":"s:9TedeeLock0a8RegisterB0V13authPublicKeySSvp"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/authPublicKey":{"type":"topic","abstract":[],"title":"authPublicKey","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"authPublicKey","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/authpublickey","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/authPublicKey","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeregisterlock/id.json b/docs/data/documentation/tedeelock/tedeeregisterlock/id.json index 4b4477e..d11f61b 100644 --- a/docs/data/documentation/tedeelock/tedeeregisterlock/id.json +++ b/docs/data/documentation/tedeelock/tedeeregisterlock/id.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/id"]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"externalID":"s:9TedeeLock0a8RegisterB0V2idSivp","role":"symbol","symbolKind":"property","title":"id","modules":[{"name":"TedeeLock"}],"roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"id","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"id","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"role":"symbol","abstract":[],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","type":"topic","title":"id","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/id"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"languages":["swift"]}]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"externalID":"s:9TedeeLock0a8RegisterB0V2idSivp","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"id"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"symbolKind":"property","title":"id","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/id":{"type":"topic","abstract":[],"title":"id","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"id","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/id","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/id","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json b/docs/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json index 7deb8d9..ff2885f 100644 --- a/docs/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json +++ b/docs/data/documentation/tedeelock/tedeeregisterlock/init(revision:targetdevicerevision:id:authpublickey:).json @@ -1 +1 @@ -{"metadata":{"externalID":"s:9TedeeLock0a8RegisterB0V8revision20targetDeviceRevision2id13authPublicKeyACSi_S2iSStcfc","modules":[{"name":"TedeeLock"}],"role":"symbol","title":"init(revision:targetDeviceRevision:id:authPublicKey:)","symbolKind":"init","roleHeading":"Initializer","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"revision","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"kind":"text","text":", "},{"text":"targetDeviceRevision","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":")","kind":"text"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)"},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"},{"kind":"text","text":", "},{"text":"targetDeviceRevision","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"id","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":")"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"kind":"symbol","sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"role":"symbol","kind":"symbol","type":"topic","title":"init(revision:targetDeviceRevision:id:authPublicKey:)","url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"text":"id","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"authPublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":")","kind":"text"}]}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"kind":"symbol","metadata":{"role":"symbol","symbolKind":"init","externalID":"s:9TedeeLock0a8RegisterB0V8revision20targetDeviceRevision2id13authPublicKeyACSi_S2iSStcfc","fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"revision"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"text":"id","kind":"externalParam"},{"kind":"text","text":": "},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"init(revision:targetDeviceRevision:id:authPublicKey:)","roleHeading":"Initializer","modules":[{"name":"TedeeLock"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"revision"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"kind":"text","text":", "},{"kind":"externalParam","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"id","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"text":"authPublicKey","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":")","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/init(revision:targetDeviceRevision:id:authPublicKey:)":{"type":"topic","abstract":[],"title":"init(revision:targetDeviceRevision:id:authPublicKey:)","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"revision","kind":"externalParam"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"targetDeviceRevision"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"id"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"authPublicKey"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":")"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/init(revision:targetdevicerevision:id:authpublickey:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/init(revision:targetDeviceRevision:id:authPublicKey:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeregisterlock/revision.json b/docs/data/documentation/tedeelock/tedeeregisterlock/revision.json index d1db460..f8913b3 100644 --- a/docs/data/documentation/tedeelock/tedeeregisterlock/revision.json +++ b/docs/data/documentation/tedeelock/tedeeregisterlock/revision.json @@ -1 +1 @@ -{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/revision"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"metadata":{"symbolKind":"property","externalID":"s:9TedeeLock0a8RegisterB0V8revisionSivp","title":"revision","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"role":"symbol","title":"revision","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"kind":"symbol","abstract":[],"type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"revision","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/revision"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","externalID":"s:9TedeeLock0a8RegisterB0V8revisionSivp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"title":"revision","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}]},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/revision":{"type":"topic","abstract":[],"title":"revision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"revision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/revision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/revision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json b/docs/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json index f0aa89b..cb26a2d 100644 --- a/docs/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json +++ b/docs/data/documentation/tedeelock/tedeeregisterlock/targetdevicerevision.json @@ -1 +1 @@ -{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","interfaceLanguage":"swift"},"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","kind":"typeIdentifier","text":"Int"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"title":"targetDeviceRevision","modules":[{"name":"TedeeLock"}],"symbolKind":"property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"roleHeading":"Instance Property","externalID":"s:9TedeeLock0a8RegisterB0V20targetDeviceRevisionSivp"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"title":"TedeeRegisterLock","url":"\/documentation\/tedeelock\/tedeeregisterlock","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeRegisterLock","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"title":"targetDeviceRevision","role":"symbol","abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","type":"topic","url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock"]]},"metadata":{"role":"symbol","externalID":"s:9TedeeLock0a8RegisterB0V20targetDeviceRevisionSivp","symbolKind":"property","roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"title":"targetDeviceRevision","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"targetDeviceRevision"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Si","text":"Int","kind":"typeIdentifier"}]}]}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock/targetDeviceRevision":{"type":"topic","abstract":[],"title":"targetDeviceRevision","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"targetDeviceRevision","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Si","text":"Int"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock\/targetdevicerevision","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock\/targetDeviceRevision","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeRegisterLock":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeRegisterLock"}],"url":"\/documentation\/tedeelock\/tedeeregisterlock","title":"TedeeRegisterLock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeRegisterLock","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeRegisterLock"}],"kind":"symbol","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber.json b/docs/data/documentation/tedeelock/tedeeserialnumber.json index ea2363d..2dfcdb5 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber.json @@ -1 +1 @@ -{"metadata":{"title":"TedeeSerialNumber","modules":[{"name":"TedeeLock"}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSerialNumber","kind":"identifier"}],"roleHeading":"Structure","navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"externalID":"s:9TedeeLock0A12SerialNumberV","symbolKind":"struct"},"relationshipsSections":[{"title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","kind":"relationships"}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"languages":["swift"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)"],"title":"Initializers"},{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"],"title":"Enumerations"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"title":"init(serialNumber:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/s8SendableP":{"identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber"]}],"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber"],"title":"Instance Properties"},{"title":"Enumerations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},"metadata":{"symbolKind":"struct","modules":[{"name":"TedeeLock"}],"title":"TedeeSerialNumber","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeSerialNumber","kind":"identifier"}],"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"externalID":"s:9TedeeLock0A12SerialNumberV","roleHeading":"Structure"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"sections":[],"relationshipsSections":[{"title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeSerialNumber","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"role":"symbol","abstract":[{"type":"text","text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type"}],"title":"init(serialNumber:)","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"text":"(","kind":"text"},{"text":"serialNumber","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}]},"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"role":"symbol","abstract":[],"title":"serialNumber","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors.json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors.json index 385fcfc..822df77 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","interfaceLanguage":"swift"},"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","kind":"relationships","title":"Conforms To"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Enumeration Cases","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"]},{"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"],"generated":true}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"metadata":{"roleHeading":"Enumeration","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"title":"TedeeSerialNumber.Errors","role":"symbol","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO","extendedModule":"TedeeLock","symbolKind":"enum"},"references":{"doc://TedeeLock/s5ErrorP":{"title":"Swift.Error","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s5ErrorP"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"abstract":[],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"title":"TedeeSerialNumber.Errors.invalidFormat"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidDeviceType","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/SQ":{"title":"Swift.Equatable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"kind":"article","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","title":"Error Implementations","abstract":[],"role":"collectionGroup","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"enum","role":"symbol","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO","roleHeading":"Enumeration","navigatorTitle":[{"kind":"identifier","text":"Errors"}],"extendedModule":"TedeeLock","title":"TedeeSerialNumber.Errors"},"kind":"symbol","sections":[],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"],"title":"Enumeration Cases"},{"generated":true,"title":"Default Implementations","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"]}],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SQ","doc:\/\/TedeeLock\/s5ErrorP","doc:\/\/TedeeLock\/SH","doc:\/\/TedeeLock\/s8SendableP"],"type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Errors","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"role":"symbol","title":"TedeeSerialNumber.Errors.invalidFormat","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","kind":"symbol","abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDeviceType"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","abstract":[],"kind":"article","type":"topic"},"doc://TedeeLock/SH":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SH","title":"Swift.Hashable"},"doc://TedeeLock/s5ErrorP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s5ErrorP","title":"Swift.Error"},"doc://TedeeLock/SQ":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/SQ","title":"Swift.Equatable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","url":"\/documentation\/tedeelock\/tedeeserialnumber","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"abstract":[{"type":"text","text":"Used for identification of the lock."}],"type":"topic","navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json index babfdcb..5d6ddfe 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/!=(_:_:).json @@ -1 +1 @@ -{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}]}],"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"metadata":{"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"role":"symbol","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"roleHeading":"Operator","externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","symbolKind":"op","extendedModule":"Swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"]]},"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","kind":"article","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","title":"Equatable Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","interfaceLanguage":"swift"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"kind":"text","text":": "},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"languages":["swift"]}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"abstract":[{"type":"text","text":"Inherited from "},{"type":"codeVoice","code":"Equatable.!=(_:_:)"},{"text":".","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"]]},"kind":"symbol","metadata":{"externalID":"s:SQsE2neoiySbx_xtFZ::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","role":"symbol","extendedModule":"Swift","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}],"roleHeading":"Operator","symbolKind":"op","title":"!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations","kind":"article","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json index ed5a7e9..38a6a2c 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/equatable-implementations.json @@ -1 +1 @@ -{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations","interfaceLanguage":"swift"},"topicSections":[{"title":"Operators","generated":true,"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)"]}],"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"roleHeading":"API Collection","title":"Equatable Implementations"},"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","title":"!=(_:_:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"type":"topic","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Equatable-Implementations"},"sections":[],"metadata":{"title":"Equatable Implementations","role":"collectionGroup","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}]},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)"],"generated":true}],"kind":"article","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/equatable-implementations"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/!=(_:_:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/!=(_:_:)","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json index ad88ee9..533f28a 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/error-implementations.json @@ -1 +1 @@ -{"sections":[],"kind":"article","variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"metadata":{"role":"collectionGroup","modules":[{"name":"TedeeLock"}],"title":"Error Implementations","roleHeading":"API Collection"},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription"],"generated":true}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","type":"topic","title":"localizedDescription","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol"}}} \ No newline at end of file +{"kind":"article","sections":[],"metadata":{"role":"collectionGroup","title":"Error Implementations","roleHeading":"API Collection","modules":[{"name":"TedeeLock"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription"],"generated":true,"title":"Instance Properties"}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"kind":"symbol","type":"topic","title":"localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json index fd9e26e..b900238 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invaliddevicetype.json @@ -1 +1 @@ -{"sections":[],"metadata":{"roleHeading":"Case","symbolKind":"case","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidDeviceType","kind":"identifier"}],"role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO17invalidDeviceTypeyA2EmF","modules":[{"name":"TedeeLock"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidDeviceType","kind":"identifier"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"kind":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"text":"invalidDeviceType","kind":"identifier"}],"abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"text":"invalidDeviceType","kind":"identifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype"]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"title":"TedeeSerialNumber.Errors.invalidDeviceType","symbolKind":"case","modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Case","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidDeviceType","kind":"identifier"}],"externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO17invalidDeviceTypeyA2EmF"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidDeviceType":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidDeviceType","role":"symbol","title":"TedeeSerialNumber.Errors.invalidDeviceType","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invaliddevicetype","kind":"symbol","abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"case"},{"text":" ","kind":"text"},{"kind":"identifier","text":"invalidDeviceType"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json index 7ade25b..7d7ea8f 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/invalidformat.json @@ -1 +1 @@ -{"sections":[],"metadata":{"symbolKind":"case","role":"symbol","modules":[{"name":"TedeeLock"}],"roleHeading":"Case","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO13invalidFormatyA2EmF","fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidFormat","kind":"identifier"}],"title":"TedeeSerialNumber.Errors.invalidFormat"},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidFormat","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat"]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat","interfaceLanguage":"swift"},"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"abstract":[],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"title":"TedeeSerialNumber.Errors.invalidFormat"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"text":"invalidFormat","kind":"identifier"}],"platforms":["macOS"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors"]]},"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"case","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"invalidFormat"}],"roleHeading":"Case","symbolKind":"case","title":"TedeeSerialNumber.Errors.invalidFormat","externalID":"s:9TedeeLock0A12SerialNumberV6ErrorsO13invalidFormatyA2EmF"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"},"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/invalidFormat":{"role":"symbol","title":"TedeeSerialNumber.Errors.invalidFormat","abstract":[],"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/invalidformat","kind":"symbol","type":"topic","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"invalidFormat","kind":"identifier"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/invalidFormat"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json index 28c78b8..31bf456 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/errors/localizeddescription.json @@ -1 +1 @@ -{"metadata":{"roleHeading":"Instance Property","symbolKind":"property","platforms":[{"introducedAt":"8.0","unavailable":false,"beta":false,"deprecated":false,"name":"iOS"},{"beta":false,"deprecated":false,"unavailable":false,"name":"macOS","introducedAt":"10.10"},{"introducedAt":"9.0","name":"tvOS","deprecated":false,"beta":false,"unavailable":false},{"beta":false,"introducedAt":"2.0","name":"watchOS","unavailable":false,"deprecated":false}],"modules":[{"relatedModules":["Swift"],"name":"TedeeLock"}],"extendedModule":"Swift","fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","title":"localizedDescription","role":"symbol"},"abstract":[{"text":"Inherited from ","type":"text"},{"type":"codeVoice","code":"Error.localizedDescription"},{"type":"text","text":"."}],"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription"]}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","interfaceLanguage":"swift"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":" { ","kind":"text"},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","type":"topic","title":"localizedDescription","abstract":[],"fragments":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"kind":"article","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","title":"Error Implementations","abstract":[],"role":"collectionGroup","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Errors"}],"navigatorTitle":[{"kind":"identifier","text":"Errors"}],"abstract":[],"kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","role":"symbol","type":"topic","title":"TedeeSerialNumber.Errors"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription"},"abstract":[{"text":"Inherited from ","type":"text"},{"code":"Error.localizedDescription","type":"codeVoice"},{"text":".","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"platforms":[{"name":"iOS","beta":false,"introducedAt":"8.0","unavailable":false,"deprecated":false},{"unavailable":false,"deprecated":false,"introducedAt":"10.10","beta":false,"name":"macOS"},{"introducedAt":"9.0","name":"tvOS","deprecated":false,"unavailable":false,"beta":false},{"deprecated":false,"unavailable":false,"introducedAt":"2.0","name":"watchOS","beta":false}],"symbolKind":"property","role":"symbol","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"text":"localizedDescription","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"title":"localizedDescription","extendedModule":"Swift","externalID":"s:s5ErrorP10FoundationE20localizedDescriptionSSvp::SYNTHESIZED::s:9TedeeLock0A12SerialNumberV6ErrorsO","modules":[{"name":"TedeeLock","relatedModules":["Swift"]}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"var","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"localizedDescription"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":" { "},{"text":"get","kind":"keyword"},{"kind":"text","text":" }"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors":{"title":"TedeeSerialNumber.Errors","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Errors"}],"abstract":[],"role":"symbol","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors","type":"topic","navigatorTitle":[{"text":"Errors","kind":"identifier"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/localizedDescription":{"url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/localizeddescription","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/localizedDescription","role":"symbol","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"localizedDescription"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"kind":"symbol","type":"topic","title":"localizedDescription","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/Errors/Error-Implementations":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/Errors\/Error-Implementations","role":"collectionGroup","title":"Error Implementations","url":"\/documentation\/tedeelock\/tedeeserialnumber\/errors\/error-implementations","abstract":[],"kind":"article","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json b/docs/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json index 3edcadd..b4a5560 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/init(serialnumber:).json @@ -1 +1 @@ -{"sections":[],"metadata":{"fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"text":") ","kind":"text"},{"text":"throws","kind":"keyword"}],"modules":[{"name":"TedeeLock"}],"symbolKind":"init","roleHeading":"Initializer","role":"symbol","externalID":"s:9TedeeLock0A12SerialNumberV06serialD0ACSS_tKcfc","title":"init(serialNumber:)"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"serialNumber","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}]}],"kind":"declarations"},{"kind":"content","content":[{"type":"heading","text":"Discussion","level":2,"anchor":"discussion"},{"type":"aside","name":"Throws","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeSerialNumber.Errors.invalidFormat, TedeeSerialNumber.Errors.invalidDeviceType","type":"text"}]}],"style":"note"}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)"]}],"kind":"symbol","references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"title":"init(serialNumber:)","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"serialNumber"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}]}}} \ No newline at end of file +{"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"role":"symbol","symbolKind":"init","externalID":"s:9TedeeLock0A12SerialNumberV06serialD0ACSS_tKcfc","title":"init(serialNumber:)","fragments":[{"kind":"identifier","text":"init"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"serialNumber"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"kind":"keyword","text":"throws"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Initializer"},"abstract":[{"text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type","type":"text"}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"serialNumber"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":") ","kind":"text"},{"kind":"keyword","text":"throws"}],"languages":["swift"]}]},{"kind":"content","content":[{"level":2,"anchor":"discussion","text":"Discussion","type":"heading"},{"name":"Throws","content":[{"inlineContent":[{"text":"TedeeSerialNumber.Errors.invalidFormat, TedeeSerialNumber.Errors.invalidDeviceType","type":"text"}],"type":"paragraph"}],"type":"aside","style":"note"}]}],"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/init(serialNumber:)":{"role":"symbol","abstract":[{"type":"text","text":"This method is validating if provided serial number follows Tedee serial number format and indicates lock device type"}],"title":"init(serialNumber:)","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/init(serialnumber:)","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/init(serialNumber:)","kind":"symbol","fragments":[{"kind":"identifier","text":"init"},{"text":"(","kind":"text"},{"text":"serialNumber","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"throws","kind":"keyword"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json b/docs/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json index 78c4231..a63399a 100644 --- a/docs/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json +++ b/docs/data/documentation/tedeelock/tedeeserialnumber/serialnumber.json @@ -1 +1 @@ -{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","interfaceLanguage":"swift"},"metadata":{"externalID":"s:9TedeeLock0A12SerialNumberV06serialD0SSvp","modules":[{"name":"TedeeLock"}],"symbolKind":"property","roleHeading":"Instance Property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"title":"serialNumber"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"serialNumber"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"title":"serialNumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","type":"topic","abstract":[],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","interfaceLanguage":"swift"},"sections":[],"metadata":{"symbolKind":"property","roleHeading":"Instance Property","role":"symbol","modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"title":"serialNumber","externalID":"s:9TedeeLock0A12SerialNumberV06serialD0SSvp"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"]]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"languages":["swift"],"platforms":["macOS"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber/serialNumber":{"role":"symbol","abstract":[],"title":"serialNumber","type":"topic","url":"\/documentation\/tedeelock\/tedeeserialnumber\/serialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber\/serialNumber","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesigneddatetime.json b/docs/data/documentation/tedeelock/tedeesigneddatetime.json index 291a8fe..bf21dcc 100644 --- a/docs/data/documentation/tedeelock/tedeesigneddatetime.json +++ b/docs/data/documentation/tedeelock/tedeesigneddatetime.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"minor":3,"patch":0},"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)"],"title":"Initializers"},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature"],"title":"Instance Properties"}],"relationshipsSections":[{"type":"conformsTo","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"kind":"relationships"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"languages":["swift"]}],"kind":"declarations"}],"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","interfaceLanguage":"swift"},"metadata":{"navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"roleHeading":"Structure","role":"symbol","symbolKind":"struct","externalID":"s:9TedeeLock0A14SignedDateTimeV","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"title":"TedeeSignedDateTime"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"datetime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"init(datetime:signature:)"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"signature"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","interfaceLanguage":"swift"},"sections":[],"relationshipsSections":[{"type":"conformsTo","identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"title":"Conforms To","kind":"relationships"}],"topicSections":[{"title":"Initializers","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)"]},{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature"],"title":"Instance Properties"}],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"role":"symbol","symbolKind":"struct","externalID":"s:9TedeeLock0A14SignedDateTimeV","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTime"}],"navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","roleHeading":"Structure","modules":[{"name":"TedeeLock"}]},"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","title":"datetime","kind":"symbol"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","title":"signature","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","title":"init(datetime:signature:)","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesigneddatetime/datetime.json b/docs/data/documentation/tedeelock/tedeesigneddatetime/datetime.json index 4dc298a..638397a 100644 --- a/docs/data/documentation/tedeelock/tedeesigneddatetime/datetime.json +++ b/docs/data/documentation/tedeelock/tedeesigneddatetime/datetime.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/datetime"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"metadata":{"externalID":"s:9TedeeLock0A14SignedDateTimeV8datetimeSSvp","roleHeading":"Instance Property","title":"datetime","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"datetime"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"symbolKind":"property","modules":[{"name":"TedeeLock"}],"role":"symbol"},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","interfaceLanguage":"swift"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"platforms":["macOS"]}]}],"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"datetime"}}} \ No newline at end of file +{"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/datetime"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime"},"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"metadata":{"externalID":"s:9TedeeLock0A14SignedDateTimeV8datetimeSSvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"datetime"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}],"title":"datetime","role":"symbol"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/datetime":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/datetime","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"datetime","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/datetime","title":"datetime","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json b/docs/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json index 147160e..df86907 100644 --- a/docs/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json +++ b/docs/data/documentation/tedeelock/tedeesigneddatetime/init(datetime:signature:).json @@ -1 +1 @@ -{"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"role":"symbol","modules":[{"name":"TedeeLock"}],"symbolKind":"init","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"datetime"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"externalID":"s:9TedeeLock0A14SignedDateTimeV8datetime9signatureACSS_SStcfc","roleHeading":"Initializer","title":"init(datetime:signature:)"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"sections":[],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"signature"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":", "},{"kind":"externalParam","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":")","kind":"text"}],"title":"init(datetime:signature:)"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)"],"traits":[{"interfaceLanguage":"swift"}]}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","interfaceLanguage":"swift"},"sections":[],"metadata":{"modules":[{"name":"TedeeLock"}],"fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"kind":"externalParam","text":"signature"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":")"}],"roleHeading":"Initializer","symbolKind":"init","externalID":"s:9TedeeLock0A14SignedDateTimeV8datetime9signatureACSS_SStcfc","title":"init(datetime:signature:)","role":"symbol"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"datetime"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":", "},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/init(datetime:signature:)":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/init(datetime:signature:)","abstract":[],"fragments":[{"text":"init","kind":"identifier"},{"kind":"text","text":"("},{"text":"datetime","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":", ","kind":"text"},{"text":"signature","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":")","kind":"text"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/init(datetime:signature:)","title":"init(datetime:signature:)","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesigneddatetime/signature.json b/docs/data/documentation/tedeelock/tedeesigneddatetime/signature.json index 99ad4c1..2c7c2e6 100644 --- a/docs/data/documentation/tedeelock/tedeesigneddatetime/signature.json +++ b/docs/data/documentation/tedeelock/tedeesigneddatetime/signature.json @@ -1 +1 @@ -{"kind":"symbol","sections":[],"metadata":{"roleHeading":"Instance Property","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14SignedDateTimeV9signatureSSvp","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"title":"signature","role":"symbol"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/signature"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"type":"topic","url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","kind":"symbol","role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"signature"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"title":"signature"}}} \ No newline at end of file +{"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature"},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"roleHeading":"Instance Property","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"signature"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"title":"signature","role":"symbol","modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A14SignedDateTimeV9signatureSSvp"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"]]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetime\/signature"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime/signature":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime\/signature","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"signature","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetime\/signature","title":"signature","kind":"symbol"}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider.json b/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider.json index e2bce77..14c50f5 100644 --- a/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider.json +++ b/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider.json @@ -1 +1 @@ -{"relationshipsSections":[{"identifiers":["doc:\/\/TedeeLock\/s8SendableP"],"type":"inheritsFrom","title":"Inherits From","kind":"relationships"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"},{"kind":"text","text":" : "},{"kind":"typeIdentifier","text":"Sendable","preciseIdentifier":"s:s8SendableP"}],"platforms":["macOS"]}]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)"],"title":"Instance Methods"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider"]}],"metadata":{"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"modules":[{"name":"TedeeLock"}],"roleHeading":"Protocol","symbolKind":"protocol","role":"symbol","title":"TedeeSignedDateTimeProvider","externalID":"s:9TedeeLock0A22SignedDateTimeProviderP","navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}]},"abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"},"doc://TedeeLock/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP","title":"Swift.Sendable"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"title":"dateTime(for:)","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","required":true,"kind":"symbol","abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"kind":"externalParam","text":"for"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","type":"topic"}}} \ No newline at end of file +{"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"relationshipsSections":[{"title":"Inherits From","kind":"relationships","type":"inheritsFrom","identifiers":["doc:\/\/TedeeLock\/s8SendableP"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"protocol","kind":"keyword"},{"kind":"text","text":" "},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"},{"text":" : ","kind":"text"},{"text":"Sendable","kind":"typeIdentifier","preciseIdentifier":"s:s8SendableP"}]}],"kind":"declarations"}],"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider"]}],"topicSections":[{"identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)"],"title":"Instance Methods"}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","interfaceLanguage":"swift"},"metadata":{"title":"TedeeSignedDateTimeProvider","externalID":"s:9TedeeLock0A22SignedDateTimeProviderP","symbolKind":"protocol","role":"symbol","roleHeading":"Protocol","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"modules":[{"name":"TedeeLock"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}]},"references":{"doc://TedeeLock/s8SendableP":{"title":"Swift.Sendable","type":"unresolvable","identifier":"doc:\/\/TedeeLock\/s8SendableP"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","title":"dateTime(for:)","abstract":[{"text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it.","type":"text"}],"type":"topic","kind":"symbol","role":"symbol","required":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"text":"for","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSignedDateTime","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json b/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json index f793617..cb28690 100644 --- a/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json +++ b/docs/data/documentation/tedeelock/tedeesigneddatetimeprovider/datetime(for:).json @@ -1 +1 @@ -{"abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"metadata":{"required":true,"externalID":"s:9TedeeLock0A22SignedDateTimeProviderP04dateE03forAA0acdE0VAA0A12SerialNumberV_tYaKF","modules":[{"name":"TedeeLock"}],"role":"symbol","symbolKind":"method","roleHeading":"Instance Method","title":"dateTime(for:)","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"text":"for","kind":"externalParam"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV","text":"TedeeSignedDateTime","kind":"typeIdentifier"}]},"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"dateTime","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"for"},{"kind":"text","text":" "},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"text":"TedeeSignedDateTime","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"platforms":["macOS"]}],"kind":"declarations"},{"kind":"content","content":[{"type":"heading","level":2,"text":"Discussion","anchor":"discussion"},{"inlineContent":[{"type":"text","text":"Caching signed date time can result in unexpected behaviour and invalid time of activity logs created by the lock"}],"type":"paragraph"}]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]]},"sections":[],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"title":"dateTime(for:)","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","required":true,"kind":"symbol","abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"kind":"externalParam","text":"for"},{"text":": ","kind":"text"},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"title":"TedeeSignedDateTimeProvider","url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","kind":"symbol","abstract":[{"text":"A type that provide signed date time for the lock","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSignedDateTimeProvider"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"title":"TedeeSerialNumber","abstract":[{"type":"text","text":"Used for identification of the lock."}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}],"navigatorTitle":[{"text":"TedeeSerialNumber","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/tedeelock\/tedeeserialnumber","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"title":"TedeeSignedDateTime","url":"\/documentation\/tedeelock\/tedeesigneddatetime","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"navigatorTitle":[{"kind":"identifier","text":"TedeeSignedDateTime"}],"abstract":[],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime","type":"topic","role":"symbol","kind":"symbol"}}} \ No newline at end of file +{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"dateTime","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"for"},{"text":" ","kind":"text"},{"text":"serialNumber","kind":"internalParam"},{"kind":"text","text":": "},{"text":"TedeeSerialNumber","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV","text":"TedeeSignedDateTime","kind":"typeIdentifier","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"}],"platforms":["macOS"]}]},{"content":[{"level":2,"text":"Discussion","type":"heading","anchor":"discussion"},{"inlineContent":[{"type":"text","text":"Caching signed date time can result in unexpected behaviour and invalid time of activity logs created by the lock"}],"type":"paragraph"}],"kind":"content"}],"abstract":[{"type":"text","text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it."}],"metadata":{"required":true,"fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"dateTime","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"for"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","text":"TedeeSignedDateTime","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}],"externalID":"s:9TedeeLock0A22SignedDateTimeProviderP04dateE03forAA0acdE0VAA0A12SerialNumberV_tYaKF","role":"symbol","modules":[{"name":"TedeeLock"}],"title":"dateTime(for:)","roleHeading":"Instance Method","symbolKind":"method"},"variants":[{"paths":["\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"sections":[],"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider"]]},"kind":"symbol","identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","interfaceLanguage":"swift"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider/dateTime(for:)":{"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider\/datetime(for:)","title":"dateTime(for:)","abstract":[{"text":"Provides signed date time. Signed date time should be fetched from tedee api every time that sdk request it.","type":"text"}],"type":"topic","kind":"symbol","role":"symbol","required":true,"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider\/dateTime(for:)","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"dateTime"},{"kind":"text","text":"("},{"text":"for","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:9TedeeLock0A12SerialNumberV","text":"TedeeSerialNumber","kind":"typeIdentifier"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"kind":"text","text":" -> "},{"text":"TedeeSignedDateTime","kind":"typeIdentifier","preciseIdentifier":"s:9TedeeLock0A14SignedDateTimeV"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTime":{"abstract":[],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTime","kind":"identifier"}],"kind":"symbol","role":"symbol","url":"\/documentation\/tedeelock\/tedeesigneddatetime","navigatorTitle":[{"text":"TedeeSignedDateTime","kind":"identifier"}],"title":"TedeeSignedDateTime","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTime"},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSignedDateTimeProvider":{"title":"TedeeSignedDateTimeProvider","type":"topic","abstract":[{"type":"text","text":"A type that provide signed date time for the lock"}],"url":"\/documentation\/tedeelock\/tedeesigneddatetimeprovider","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSignedDateTimeProvider","fragments":[{"kind":"keyword","text":"protocol"},{"text":" ","kind":"text"},{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"navigatorTitle":[{"text":"TedeeSignedDateTimeProvider","kind":"identifier"}],"role":"symbol","kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSerialNumber":{"abstract":[{"text":"Used for identification of the lock.","type":"text"}],"url":"\/documentation\/tedeelock\/tedeeserialnumber","title":"TedeeSerialNumber","type":"topic","navigatorTitle":[{"kind":"identifier","text":"TedeeSerialNumber"}],"role":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSerialNumber","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSerialNumber"}]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesoftwareversion.json b/docs/data/documentation/tedeelock/tedeesoftwareversion.json index 9f06d1e..d3c674c 100644 --- a/docs/data/documentation/tedeelock/tedeesoftwareversion.json +++ b/docs/data/documentation/tedeelock/tedeesoftwareversion.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"]}],"metadata":{"roleHeading":"Structure","role":"symbol","title":"TedeeSoftwareVersion","symbolKind":"struct","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"externalID":"s:9TedeeLock0A15SoftwareVersionV","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"modules":[{"name":"TedeeLock"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","interfaceLanguage":"swift"},"relationshipsSections":[{"kind":"relationships","title":"Conforms To","identifiers":["doc:\/\/TedeeLock\/SE"],"type":"conformsTo"}],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion"]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"title":"softwareType","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/SE":{"identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"kind":"symbol","title":"version","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"version"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version","abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock"]]},"metadata":{"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A15SoftwareVersionV","roleHeading":"Structure","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"title":"TedeeSoftwareVersion","role":"symbol","symbolKind":"struct","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}]},"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","interfaceLanguage":"swift"},"sections":[],"topicSections":[{"title":"Instance Properties","identifiers":["doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","variants":[{"paths":["\/documentation\/tedeelock\/tedeesoftwareversion"],"traits":[{"interfaceLanguage":"swift"}]}],"relationshipsSections":[{"type":"conformsTo","kind":"relationships","identifiers":["doc:\/\/TedeeLock\/SE"],"title":"Conforms To"}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"version"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","kind":"symbol","type":"topic","title":"version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version"},"doc://TedeeLock/SE":{"identifier":"doc:\/\/TedeeLock\/SE","title":"Swift.Encodable","type":"unresolvable"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","title":"softwareType","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"softwareType"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json b/docs/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json index 6c059b5..43bbb96 100644 --- a/docs/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json +++ b/docs/data/documentation/tedeelock/tedeesoftwareversion/softwaretype.json @@ -1 +1 @@ -{"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype"]}],"sections":[],"metadata":{"symbolKind":"property","externalID":"s:9TedeeLock0A15SoftwareVersionV12softwareTypeSivp","title":"softwareType","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"modules":[{"name":"TedeeLock"}],"role":"symbol","roleHeading":"Instance Property"},"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"title":"softwareType","type":"topic","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","abstract":[],"kind":"symbol"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"}}} \ No newline at end of file +{"kind":"symbol","metadata":{"role":"symbol","symbolKind":"property","roleHeading":"Instance Property","title":"softwareType","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"}],"modules":[{"name":"TedeeLock"}],"externalID":"s:9TedeeLock0A15SoftwareVersionV12softwareTypeSivp"},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"softwareType"},{"text":": ","kind":"text"},{"text":"Int","preciseIdentifier":"s:Si","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"references":{"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/softwareType":{"role":"symbol","type":"topic","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/softwareType","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/softwaretype","title":"softwareType","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"softwareType"},{"kind":"text","text":": "},{"text":"Int","kind":"typeIdentifier","preciseIdentifier":"s:Si"}],"kind":"symbol","abstract":[]},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]}}} \ No newline at end of file diff --git a/docs/data/documentation/tedeelock/tedeesoftwareversion/version.json b/docs/data/documentation/tedeelock/tedeesoftwareversion/version.json index 6ee34e9..8cce00d 100644 --- a/docs/data/documentation/tedeelock/tedeesoftwareversion/version.json +++ b/docs/data/documentation/tedeelock/tedeesoftwareversion/version.json @@ -1 +1 @@ -{"metadata":{"role":"symbol","symbolKind":"property","externalID":"s:9TedeeLock0A15SoftwareVersionV7versionSSvp","roleHeading":"Instance Property","title":"version","modules":[{"name":"TedeeLock"}],"fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"version","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"version","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/version"]}],"references":{"doc://TedeeLock/documentation/TedeeLock":{"title":"TedeeLock","kind":"symbol","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","url":"\/documentation\/tedeelock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}],"type":"topic","role":"collection"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"TedeeSoftwareVersion"}],"kind":"symbol","title":"TedeeSoftwareVersion","url":"\/documentation\/tedeelock\/tedeesoftwareversion","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","role":"symbol","abstract":[],"type":"topic"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"kind":"symbol","title":"version","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"version"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version","abstract":[],"role":"symbol","type":"topic"}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version"},"metadata":{"symbolKind":"property","externalID":"s:9TedeeLock0A15SoftwareVersionV7versionSSvp","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"version","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","title":"version","modules":[{"name":"TedeeLock"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/TedeeLock\/documentation\/TedeeLock","doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion"]]},"sections":[],"variants":[{"paths":["\/documentation\/tedeelock\/tedeesoftwareversion\/version"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"version","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"platforms":["macOS"],"languages":["swift"]}]}],"references":{"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion/version":{"identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion\/version","abstract":[],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"version"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"role":"symbol","kind":"symbol","type":"topic","title":"version","url":"\/documentation\/tedeelock\/tedeesoftwareversion\/version"},"doc://TedeeLock/documentation/TedeeLock/TedeeSoftwareVersion":{"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"TedeeSoftwareVersion","kind":"identifier"}],"title":"TedeeSoftwareVersion","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"TedeeSoftwareVersion"}],"type":"topic","url":"\/documentation\/tedeelock\/tedeesoftwareversion","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock\/TedeeSoftwareVersion","abstract":[]},"doc://TedeeLock/documentation/TedeeLock":{"url":"\/documentation\/tedeelock","identifier":"doc:\/\/TedeeLock\/documentation\/TedeeLock","kind":"symbol","type":"topic","role":"collection","title":"TedeeLock","abstract":[{"text":"This comprehensive toolkit empowers developers to seamlessly integrate Tedee Lock functionality into their iOS applications. Whether you’re building a smart home app or enhancing access control features, our SDK provides the necessary tools to communicate with and control Tedee locks with ease, leveraging Bluetooth Low Energy (BLE) communication protocol.","type":"text"}]}}} \ No newline at end of file diff --git a/docs/data/tutorials/how-to-add-lock.json b/docs/data/tutorials/how-to-add-lock.json index a546cc2..8f01592 100644 --- a/docs/data/tutorials/how-to-add-lock.json +++ b/docs/data/tutorials/how-to-add-lock.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"role":"overview","categoryPathComponent":"how-to-add-lock","estimatedTime":"40min","category":"How to add Lock","title":"How to add Lock"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/how-to-add-lock"]}],"kind":"overview","sections":[{"action":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","overridingTitle":"Get started","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"type":"reference"},"image":"logo_tedee.png","backgroundImage":"logo_tedee.png","content":[{"type":"paragraph","inlineContent":[{"text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it.","type":"text"}]}],"kind":"hero","title":"How to add Lock"},{"kind":"volume","content":[],"name":null,"image":null,"chapters":[{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"],"name":"Before You start","image":"logo_tedee.png","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"In this chapter will go through all set up things that will be required in this tutorial"}]}]},{"content":[{"inlineContent":[{"type":"text","text":"In this chapter we will make unsecured connection to the lock and we will get all the data required to add this lock to Tedee account"}],"type":"paragraph"}],"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"],"name":"Connect and get lock data","image":"logo_tedee.png"},{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"],"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"In this chapter we will add the lock to Tedee account and we will register it"}]}],"image":"logo_tedee.png","name":"Add lock to Tedee account"},{"name":"Secured connection with lock","image":"logo_tedee.png","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"],"content":[{"inlineContent":[{"type":"text","text":"In this chapter we will make secured connection to the lock"}],"type":"paragraph"}]},{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"],"image":"logo_tedee.png","name":"Summary","content":[{"type":"paragraph","inlineContent":[{"text":"In this chapter we will combine all the things that we set up and prepared in previous chapters.","type":"text"}]}]}]}],"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","interfaceLanguage":"swift"},"hierarchy":{"paths":[],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","url":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"type":"link"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"logo_tedee.png":{"alt":"Tedee","identifier":"logo_tedee.png","type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/logo_tedee.png"}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"}}} \ No newline at end of file +{"metadata":{"role":"overview","title":"How to add Lock","category":"How to add Lock","estimatedTime":"40min","categoryPathComponent":"how-to-add-lock"},"kind":"overview","hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/how-to-add-lock"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[{"kind":"hero","action":{"type":"reference","overridingTitle":"Get started","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","isActive":true},"content":[{"type":"paragraph","inlineContent":[{"text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it.","type":"text"}]}],"backgroundImage":"logo_tedee.png","title":"How to add Lock","image":"logo_tedee.png"},{"kind":"volume","name":null,"image":null,"content":[],"chapters":[{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"],"name":"Before You start","content":[{"inlineContent":[{"text":"In this chapter will go through all set up things that will be required in this tutorial","type":"text"}],"type":"paragraph"}],"image":"logo_tedee.png"},{"tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"],"image":"logo_tedee.png","content":[{"inlineContent":[{"type":"text","text":"In this chapter we will make unsecured connection to the lock and we will get all the data required to add this lock to Tedee account"}],"type":"paragraph"}],"name":"Connect and get lock data"},{"name":"Add lock to Tedee account","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"],"content":[{"inlineContent":[{"text":"In this chapter we will add the lock to Tedee account and we will register it","type":"text"}],"type":"paragraph"}],"image":"logo_tedee.png"},{"name":"Secured connection with lock","content":[{"type":"paragraph","inlineContent":[{"text":"In this chapter we will make secured connection to the lock","type":"text"}]}],"image":"logo_tedee.png","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"]},{"image":"logo_tedee.png","name":"Summary","tutorials":["doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"],"content":[{"inlineContent":[{"text":"In this chapter we will combine all the things that we set up and prepared in previous chapters.","type":"text"}],"type":"paragraph"}]}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"logo_tedee.png":{"identifier":"logo_tedee.png","variants":[{"url":"\/images\/logo_tedee.png","traits":["1x","light"]}],"type":"image","alt":"Tedee"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"https://portal.tedee.com":{"titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"url":"https:\/\/portal.tedee.com","identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal","type":"link"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/add-lock.json b/docs/data/tutorials/tedeelock/add-lock.json index e29580e..5a4feb0 100644 --- a/docs/data/tutorials/tedeelock/add-lock.json +++ b/docs/data/tutorials/tedeelock/add-lock.json @@ -1 +1 @@ -{"metadata":{"title":"Add Lock","categoryPathComponent":"how-to-add-lock","role":"project","category":"How to add Lock"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/add-lock"]}],"sections":[{"kind":"hero","chapter":"Add lock to Tedee account","estimatedTimeInMinutes":5,"content":[{"inlineContent":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"type":"paragraph"}],"title":"Add Lock"},{"tasks":[{"title":"Add Lock","anchor":"Add-Lock","contentSection":[{"content":[{"inlineContent":[{"text":"We will use add lock data and we will pass it to the Tedee API to add the lock to the account. In response, we will get data that is needed to register the lock and establish secure connection later.","type":"text"}],"type":"paragraph"}],"kind":"contentAndMedia","mediaPosition":"trailing"}],"stepsSection":[{"type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Update add lock data with lock name, activation code and current timezone."}]}],"code":"add_lock_01.swift","caption":[],"media":null,"runtimePreview":null},{"caption":[],"media":null,"code":"add_lock_02.swift","type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"runtimePreview":"add_lock_response.png"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract registration data and return TedeeRegisterLock"}]}],"caption":[],"media":null,"code":"add_lock_03.swift","type":"step","runtimePreview":null}]}],"kind":"tasks"},{"title":"Register Lock","kind":"callToAction","action":{"type":"reference","isActive":true,"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"overridingTitle":"Get started"},"abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"featuredEyebrow":"Tutorial"}],"kind":"project","references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"add_lock_03.swift":{"type":"file","syntax":"swift","highlights":[{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27}],"fileName":"addLock.swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: Any]"," "," return TedeeRegisterLock(revision: result[\"revision\"] as! Int,"," targetDeviceRevision: result[\"targetDeviceRevision\"] as! Int,"," id: result[\"id\"] as! Int,"," authPublicKey: result[\"authPublicKey\"] as! String)"," }","}"],"identifier":"add_lock_03.swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"add_lock_01.swift":{"identifier":"add_lock_01.swift","type":"file","fileName":"addLock.swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," }","}"],"syntax":"swift","highlights":[]},"https://portal.tedee.com":{"titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"title":"Tedee Portal","type":"link","identifier":"https:\/\/portal.tedee.com","url":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"add_lock_response.png":{"alt":"Add Lock response","variants":[{"url":"\/images\/add_lock_response.png","traits":["1x","light"]}],"identifier":"add_lock_response.png","type":"image"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"add_lock_02.swift":{"highlights":[{"line":10},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"identifier":"add_lock_02.swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"fileName":"addLock.swift","syntax":"swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"title":"Unsecured connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}}} \ No newline at end of file +{"sections":[{"chapter":"Add lock to Tedee account","kind":"hero","estimatedTimeInMinutes":5,"content":[{"type":"paragraph","inlineContent":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}]}],"title":"Add Lock"},{"tasks":[{"contentSection":[{"kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We will use add lock data and we will pass it to the Tedee API to add the lock to the account. In response, we will get data that is needed to register the lock and establish secure connection later."}]}],"mediaPosition":"trailing"}],"stepsSection":[{"type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Update add lock data with lock name, activation code and current timezone."}]}],"media":null,"code":"add_lock_01.swift","runtimePreview":null,"caption":[]},{"type":"step","content":[{"inlineContent":[{"type":"text","text":"Prepare and send request."}],"type":"paragraph"}],"caption":[],"media":null,"code":"add_lock_02.swift","runtimePreview":"add_lock_response.png"},{"media":null,"type":"step","code":"add_lock_03.swift","runtimePreview":null,"content":[{"inlineContent":[{"text":"Extract registration data and return TedeeRegisterLock","type":"text"}],"type":"paragraph"}],"caption":[]}],"anchor":"Add-Lock","title":"Add Lock"}],"kind":"tasks"},{"kind":"callToAction","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"featuredEyebrow":"Tutorial","action":{"isActive":true,"overridingTitle":"Get started","type":"reference","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"},"title":"Register Lock"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]],"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}]}]}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/add-lock"]}],"kind":"project","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},"metadata":{"role":"project","title":"Add Lock","category":"How to add Lock","categoryPathComponent":"how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"add_lock_01.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," }","}"],"identifier":"add_lock_01.swift","syntax":"swift","type":"file","highlights":[],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"add_lock_03.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: Any]"," "," return TedeeRegisterLock(revision: result[\"revision\"] as! Int,"," targetDeviceRevision: result[\"targetDeviceRevision\"] as! Int,"," id: result[\"id\"] as! Int,"," authPublicKey: result[\"authPublicKey\"] as! String)"," }","}"],"identifier":"add_lock_03.swift","syntax":"swift","type":"file","highlights":[{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27}],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"add_lock_02.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLockToAccount(addLock: TedeeAddLock) async -> TedeeRegisterLock {"," var addLock = addLock"," addLock.name = \"SDK\""," addLock.timeZone = TimeZone.current.identifier"," addLock.activationCode = activationCode"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/lock\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," request.httpBody = try! JSONEncoder().encode(addLock)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"identifier":"add_lock_02.swift","syntax":"swift","type":"file","highlights":[{"line":10},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"fileType":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"https://portal.tedee.com":{"url":"https:\/\/portal.tedee.com","identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"type":"link"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"add_lock_response.png":{"variants":[{"url":"\/images\/add_lock_response.png","traits":["1x","light"]}],"type":"image","alt":"Add Lock response","identifier":"add_lock_response.png"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/get-lock-data.json b/docs/data/tutorials/tedeelock/get-lock-data.json index 45905c9..68b4c31 100644 --- a/docs/data/tutorials/tedeelock/get-lock-data.json +++ b/docs/data/tutorials/tedeelock/get-lock-data.json @@ -1 +1 @@ -{"kind":"project","identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","interfaceLanguage":"swift"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}]}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/get-lock-data"]}],"metadata":{"role":"project","categoryPathComponent":"how-to-add-lock","title":"Get Lock data","category":"How to add Lock"},"sections":[{"estimatedTimeInMinutes":5,"kind":"hero","chapter":"Connect and get lock data","title":"Get Lock data","content":[{"inlineContent":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"paragraph"}]},{"kind":"tasks","tasks":[{"stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"TedeeLockManager require signed date time provider."}]}],"caption":[],"media":null,"code":"get_lock_data_01.swift","runtimePreview":null,"type":"step"},{"media":null,"type":"step","runtimePreview":"signed_datetime_response.png","caption":[],"code":"get_lock_data_02.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}]},{"media":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract TedeeSignedDateTime from response."}]}],"code":"get_lock_data_03.swift","type":"step","runtimePreview":null,"caption":[]}],"title":"Provide Signed date time","contentSection":[{"mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"text":"We will get signed date time from Tedee API and then provide it to the TedeeLockManager.","type":"text"}]}],"kind":"contentAndMedia"}],"anchor":"Provide-Signed-date-time"},{"anchor":"Get-lock-data","contentSection":[{"kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"We will get add lock data from unsecured connected lock.","type":"text"}]}],"mediaPosition":"trailing"}],"stepsSection":[{"content":[{"inlineContent":[{"type":"text","text":"By passing TedeeSerialNumber of the lock that we have unsecured connection. We can get add lock data"}],"type":"paragraph"}],"code":"get_lock_data_04.swift","runtimePreview":null,"media":null,"type":"step","caption":[]}],"title":"Get lock data"}]},{"kind":"callToAction","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"featuredEyebrow":"Tutorial","title":"Add Lock","action":{"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","isActive":true,"overridingTitle":"Get started","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]}}],"schemaVersion":{"major":0,"patch":0,"minor":3},"references":{"get_lock_data_01.swift":{"highlights":[],"fileName":"addLock.swift","identifier":"get_lock_data_01.swift","type":"file","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," "," }","}"],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"signed_datetime_response.png":{"alt":"Signed Datetime response","type":"image","identifier":"signed_datetime_response.png","variants":[{"url":"\/images\/signed_datetime_response.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"get_lock_data_03.swift":{"highlights":[{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18}],"fileName":"addLock.swift","identifier":"get_lock_data_03.swift","type":"file","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return TedeeSignedDateTime(datetime: result[\"datetime\"]!,"," signature: result[\"signature\"]!)"," }","}"],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"get_lock_data_04.swift":{"fileName":"addLock.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func getAddLockData(serialNumber: TedeeSerialNumber) async -> TedeeAddLock {"," try! await TedeeLockManager.shared.getAddLockData(serialNumber)"," }","}"],"identifier":"get_lock_data_04.swift","fileType":"swift","highlights":[],"syntax":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"get_lock_data_02.swift":{"highlights":[{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":12}],"fileType":"swift","identifier":"get_lock_data_02.swift","syntax":"swift","type":"file","fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"https://portal.tedee.com":{"url":"https:\/\/portal.tedee.com","title":"Tedee Portal","type":"link","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"}}} \ No newline at end of file +{"metadata":{"role":"project","title":"Get Lock data","categoryPathComponent":"how-to-add-lock","category":"How to add Lock"},"hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"kind":"project","schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/get-lock-data"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"sections":[{"chapter":"Connect and get lock data","kind":"hero","title":"Get Lock data","estimatedTimeInMinutes":5,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}]}]},{"kind":"tasks","tasks":[{"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"We will get signed date time from Tedee API and then provide it to the TedeeLockManager.","type":"text"}]}]}],"title":"Provide Signed date time","anchor":"Provide-Signed-date-time","stepsSection":[{"caption":[],"code":"get_lock_data_01.swift","media":null,"runtimePreview":null,"type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"TedeeLockManager require signed date time provider.","type":"text"}]}]},{"caption":[],"code":"get_lock_data_02.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"type":"step","runtimePreview":"signed_datetime_response.png","media":null},{"caption":[],"media":null,"content":[{"inlineContent":[{"type":"text","text":"Extract TedeeSignedDateTime from response."}],"type":"paragraph"}],"code":"get_lock_data_03.swift","runtimePreview":null,"type":"step"}]},{"title":"Get lock data","anchor":"Get-lock-data","stepsSection":[{"content":[{"inlineContent":[{"type":"text","text":"By passing TedeeSerialNumber of the lock that we have unsecured connection. We can get add lock data"}],"type":"paragraph"}],"caption":[],"media":null,"code":"get_lock_data_04.swift","type":"step","runtimePreview":null}],"contentSection":[{"content":[{"type":"paragraph","inlineContent":[{"text":"We will get add lock data from unsecured connected lock.","type":"text"}]}],"mediaPosition":"trailing","kind":"contentAndMedia"}]}]},{"title":"Add Lock","featuredEyebrow":"Tutorial","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"kind":"callToAction","action":{"overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","isActive":true,"type":"reference","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]}}],"references":{"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"get_lock_data_02.swift":{"type":"file","identifier":"get_lock_data_02.swift","highlights":[{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":12}],"content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"syntax":"swift","fileName":"addLock.swift","fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"get_lock_data_01.swift":{"fileType":"swift","syntax":"swift","highlights":[],"type":"file","identifier":"get_lock_data_01.swift","fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," "," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"get_lock_data_03.swift":{"fileName":"addLock.swift","highlights":[{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18}],"identifier":"get_lock_data_03.swift","content":["import Foundation","import TedeeLock","","extension AddLock: TedeeSignedDateTimeProvider {"," func dateTime(for serialNumber: TedeeSerialNumber) async throws -> TedeeSignedDateTime {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/datetime\/getsignedtime\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return TedeeSignedDateTime(datetime: result[\"datetime\"]!,"," signature: result[\"signature\"]!)"," }","}"],"type":"file","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"signed_datetime_response.png":{"type":"image","identifier":"signed_datetime_response.png","alt":"Signed Datetime response","variants":[{"traits":["1x","light"],"url":"\/images\/signed_datetime_response.png"}]},"get_lock_data_04.swift":{"highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getAddLockData(serialNumber: TedeeSerialNumber) async -> TedeeAddLock {"," try! await TedeeLockManager.shared.getAddLockData(serialNumber)"," }","}"],"identifier":"get_lock_data_04.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"https://portal.tedee.com":{"type":"link","identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/pak-set-up.json b/docs/data/tutorials/tedeelock/pak-set-up.json index 12396e5..3b4881b 100644 --- a/docs/data/tutorials/tedeelock/pak-set-up.json +++ b/docs/data/tutorials/tedeelock/pak-set-up.json @@ -1 +1 @@ -{"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"project","variants":[{"paths":["\/tutorials\/tedeelock\/pak-set-up"],"traits":[{"interfaceLanguage":"swift"}]}],"sections":[{"estimatedTimeInMinutes":5,"kind":"hero","title":"Personal Access Key","chapter":"Before You start","content":[{"type":"paragraph","inlineContent":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]}]},{"kind":"tasks","tasks":[{"contentSection":[{"kind":"contentAndMedia","content":[{"inlineContent":[{"type":"text","text":"We will create personal access key, that we will use to authorise in Tedee API"}],"type":"paragraph"}],"mediaPosition":"trailing"}],"title":"Personal Access Key","anchor":"Personal-Access-Key","stepsSection":[{"code":null,"type":"step","content":[{"inlineContent":[{"text":"Log in to ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/portal.tedee.com"},{"text":".","type":"text"}],"type":"paragraph"}],"media":"tedee_portal.png","caption":[],"runtimePreview":null},{"type":"step","runtimePreview":null,"caption":[],"content":[{"type":"paragraph","inlineContent":[{"text":"Click on your profile icon and select “Personal access keys”.","type":"text"}]}],"media":"tedee_portal_profile.png","code":null},{"type":"step","code":null,"runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"Select “Add key”."}],"type":"paragraph"}],"media":"tedee_portal_pak_view.png","caption":[]},{"type":"step","runtimePreview":null,"code":null,"media":"tedee_portal_pak_configuration.png","caption":[],"content":[{"inlineContent":[{"text":"Configure new key with access scopes: devices read and write, device certificates read, mobile read and write.","type":"text"}],"type":"paragraph"}]},{"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Save new key for later use.","type":"text"}]}],"code":null,"caption":[],"type":"step","media":"tedee_portal_pak_created.png"}]}]},{"featuredEyebrow":"Tutorial","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"action":{"overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","overridingTitleInlineContent":[{"text":"Get started","type":"text"}],"type":"reference","isActive":true},"kind":"callToAction","title":"Unsecured Connection"}],"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","interfaceLanguage":"swift"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"metadata":{"categoryPathComponent":"how-to-add-lock","role":"project","title":"Personal Access Key","category":"How to add Lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"tedee_portal_pak_created.png":{"alt":"Tedee portal","type":"image","identifier":"tedee_portal_pak_created.png","variants":[{"url":"\/images\/tedee_portal_pak_created.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"tedee_portal_pak_view.png":{"type":"image","alt":"Tedee portal","identifier":"tedee_portal_pak_view.png","variants":[{"url":"\/images\/tedee_portal_pak_view.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"tedee_portal_profile.png":{"alt":"Tedee portal","identifier":"tedee_portal_profile.png","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_profile.png"}],"type":"image"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"tedee_portal_pak_configuration.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_pak_configuration.png"}],"alt":"Tedee portal","type":"image","identifier":"tedee_portal_pak_configuration.png"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","type":"link","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"tedee_portal.png":{"alt":"Tedee portal","type":"image","identifier":"tedee_portal.png","variants":[{"url":"\/images\/tedee_portal.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"}}} \ No newline at end of file +{"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"project","identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/pak-set-up"]}],"sections":[{"chapter":"Before You start","title":"Personal Access Key","kind":"hero","estimatedTimeInMinutes":5,"content":[{"inlineContent":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"isActive":true,"identifier":"https:\/\/portal.tedee.com","type":"reference"},{"text":".","type":"text"}],"type":"paragraph"}]},{"kind":"tasks","tasks":[{"stepsSection":[{"caption":[],"type":"step","media":"tedee_portal.png","code":null,"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Log in to "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"text":".","type":"text"}]}]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Click on your profile icon and select “Personal access keys”.","type":"text"}]}],"media":"tedee_portal_profile.png","runtimePreview":null,"code":null,"caption":[],"type":"step"},{"code":null,"runtimePreview":null,"type":"step","caption":[],"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Select “Add key”."}]}],"media":"tedee_portal_pak_view.png"},{"caption":[],"content":[{"inlineContent":[{"text":"Configure new key with access scopes: devices read and write, device certificates read, mobile read and write.","type":"text"}],"type":"paragraph"}],"media":"tedee_portal_pak_configuration.png","runtimePreview":null,"type":"step","code":null},{"type":"step","code":null,"caption":[],"runtimePreview":null,"media":"tedee_portal_pak_created.png","content":[{"inlineContent":[{"type":"text","text":"Save new key for later use."}],"type":"paragraph"}]}],"anchor":"Personal-Access-Key","title":"Personal Access Key","contentSection":[{"content":[{"inlineContent":[{"text":"We will create personal access key, that we will use to authorise in Tedee API","type":"text"}],"type":"paragraph"}],"mediaPosition":"trailing","kind":"contentAndMedia"}]}]},{"kind":"callToAction","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"title":"Unsecured Connection","action":{"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","overridingTitle":"Get started","isActive":true,"overridingTitleInlineContent":[{"text":"Get started","type":"text"}]},"featuredEyebrow":"Tutorial"}],"metadata":{"categoryPathComponent":"how-to-add-lock","category":"How to add Lock","role":"project","title":"Personal Access Key"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]]},"references":{"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"https://portal.tedee.com":{"url":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"title":"Tedee Portal","type":"link","identifier":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"tedee_portal_pak_view.png":{"type":"image","alt":"Tedee portal","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_pak_view.png"}],"identifier":"tedee_portal_pak_view.png"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"tedee_portal_pak_created.png":{"type":"image","variants":[{"url":"\/images\/tedee_portal_pak_created.png","traits":["1x","light"]}],"alt":"Tedee portal","identifier":"tedee_portal_pak_created.png"},"tedee_portal_profile.png":{"identifier":"tedee_portal_profile.png","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal_profile.png"}],"type":"image","alt":"Tedee portal"},"tedee_portal.png":{"type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/tedee_portal.png"}],"alt":"Tedee portal","identifier":"tedee_portal.png"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"tedee_portal_pak_configuration.png":{"alt":"Tedee portal","identifier":"tedee_portal_pak_configuration.png","type":"image","variants":[{"url":"\/images\/tedee_portal_pak_configuration.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/register-lock.json b/docs/data/tutorials/tedeelock/register-lock.json index 5951806..bc1eb46 100644 --- a/docs/data/tutorials/tedeelock/register-lock.json +++ b/docs/data/tutorials/tedeelock/register-lock.json @@ -1 +1 @@ -{"kind":"project","sections":[{"title":"Register Lock","chapter":"Add lock to Tedee account","estimatedTimeInMinutes":2,"kind":"hero","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}]}]},{"tasks":[{"contentSection":[{"mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We will use TedeeRegisterLock that we get from adding lock to the Tedee account to register the lock."}]}],"kind":"contentAndMedia"}],"title":"Register Lock","anchor":"Register-Lock","stepsSection":[{"type":"step","media":null,"content":[{"inlineContent":[{"text":"Check if lock is still connected and if yes, then register it.","type":"text"}],"type":"paragraph"}],"code":"register_lock_01.swift","runtimePreview":null,"caption":[]},{"caption":[],"code":"register_lock_02.swift","type":"step","media":null,"content":[{"type":"paragraph","inlineContent":[{"text":"If not, then connect to the lock and after that, register it.","type":"text"}]}],"runtimePreview":null}]}],"kind":"tasks"},{"featuredEyebrow":"Tutorial","title":"Secured Connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"callToAction","action":{"overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","overridingTitle":"Get started","type":"reference"}}],"hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]]},"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","interfaceLanguage":"swift"},"metadata":{"role":"project","category":"How to add Lock","categoryPathComponent":"how-to-add-lock","title":"Register Lock"},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/register-lock"]}],"references":{"register_lock_02.swift":{"fileName":"addLock.swift","highlights":[{"line":8},{"line":9},{"line":10}],"identifier":"register_lock_02.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," } else {"," await unsecuredConnection(serialNumber: serialNumber)"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"url":"https:\/\/portal.tedee.com","type":"link"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"register_lock_01.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"register_lock_01.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"]},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","interfaceLanguage":"swift"},"kind":"project","hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"metadata":{"categoryPathComponent":"how-to-add-lock","title":"Register Lock","role":"project","category":"How to add Lock"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/register-lock"]}],"sections":[{"estimatedTimeInMinutes":2,"kind":"hero","content":[{"inlineContent":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"type":"paragraph"}],"title":"Register Lock","chapter":"Add lock to Tedee account"},{"tasks":[{"stepsSection":[{"media":null,"caption":[],"type":"step","code":"register_lock_01.swift","runtimePreview":null,"content":[{"inlineContent":[{"text":"Check if lock is still connected and if yes, then register it.","type":"text"}],"type":"paragraph"}]},{"runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"If not, then connect to the lock and after that, register it."}],"type":"paragraph"}],"caption":[],"code":"register_lock_02.swift","type":"step","media":null}],"title":"Register Lock","anchor":"Register-Lock","contentSection":[{"kind":"contentAndMedia","content":[{"inlineContent":[{"text":"We will use TedeeRegisterLock that we get from adding lock to the Tedee account to register the lock.","type":"text"}],"type":"paragraph"}],"mediaPosition":"trailing"}]}],"kind":"tasks"},{"action":{"overridingTitle":"Get started","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"reference"},"featuredEyebrow":"Tutorial","title":"Secured Connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"kind":"callToAction"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"references":{"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"register_lock_02.swift":{"syntax":"swift","fileName":"addLock.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," } else {"," await unsecuredConnection(serialNumber: serialNumber)"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"],"fileType":"swift","identifier":"register_lock_02.swift","highlights":[{"line":8},{"line":9},{"line":10}]},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"https://portal.tedee.com":{"type":"link","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"register_lock_01.swift":{"type":"file","fileType":"swift","highlights":[],"syntax":"swift","identifier":"register_lock_01.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func registerLock(serialNumber: TedeeSerialNumber, registerLock: TedeeRegisterLock) async {"," if await TedeeLockManager.shared.isConnected(serialNumber) {"," try! await TedeeLockManager.shared.registerLock(serialNumber, registration: registerLock)"," }"," }","}"],"fileName":"addLock.swift"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/requirements.json b/docs/data/tutorials/tedeelock/requirements.json index a2020f7..120d631 100644 --- a/docs/data/tutorials/tedeelock/requirements.json +++ b/docs/data/tutorials/tedeelock/requirements.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/requirements"]}],"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","interfaceLanguage":"swift"},"sections":[{"estimatedTimeInMinutes":5,"chapter":"Before You start","content":[{"inlineContent":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"paragraph"}],"kind":"hero","title":"Requirements"},{"kind":"tasks","tasks":[{"anchor":"Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO","contentSection":[{"content":[],"mediaPosition":"trailing","kind":"contentAndMedia"}],"stepsSection":[{"code":null,"content":[{"type":"paragraph","inlineContent":[{"text":"You need to have Tedee Pro or Tedee Go lock. You can acquire one at ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/tedee.com"},{"text":".","type":"text"}]}],"caption":[],"type":"step","media":"lock_pro.png","runtimePreview":null},{"media":"factory_reset.png","code":null,"type":"step","caption":[],"runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"Your lock must be factory reseted, you can check how to do it "},{"identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","isActive":true,"type":"reference"},{"type":"text","text":"."}],"type":"paragraph"}]},{"media":"remove_from_account.png","runtimePreview":null,"type":"step","caption":[],"content":[{"inlineContent":[{"type":"text","text":"Your lock cannot be added to any account. If you added your lock before, you can delete it from account using Tedee app."}],"type":"paragraph"}],"code":null}]},{"anchor":"Activation-code","title":"Activation code","contentSection":[{"content":[],"kind":"contentAndMedia","mediaPosition":"trailing"}],"stepsSection":[{"content":[{"inlineContent":[{"type":"text","text":"Activation code of your lock."}],"type":"paragraph"}],"media":"activation_code.png","caption":[],"runtimePreview":null,"type":"step","code":null}]},{"anchor":"Tedee-account","title":"Tedee account","contentSection":[{"kind":"contentAndMedia","content":[],"mediaPosition":"trailing"}],"stepsSection":[{"type":"step","runtimePreview":null,"media":"create_account.png","code":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"You should have a working Tedee account. You can create one from "},{"isActive":true,"type":"reference","identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl"},{"text":".","type":"text"}]}],"caption":[]}]}]},{"action":{"type":"reference","isActive":true,"overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]},"abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"type":"reference","isActive":true,"identifier":"https:\/\/portal.tedee.com"},{"text":".","type":"text"}],"kind":"callToAction","title":"Personal Access Key","featuredEyebrow":"Tutorial"}],"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]]},"kind":"project","schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"role":"project","categoryPathComponent":"how-to-add-lock","category":"How to add Lock","title":"Requirements"},"references":{"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"lock_pro.png":{"variants":[{"url":"\/images\/lock_pro.png","traits":["1x","light"]}],"identifier":"lock_pro.png","alt":"Tedee Pro","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"create_account.png":{"identifier":"create_account.png","alt":"Create account","type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/create_account.png"}]},"activation_code.png":{"variants":[{"url":"\/images\/activation_code.png","traits":["1x","light"]}],"identifier":"activation_code.png","alt":"Activation code","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"factory_reset.png":{"identifier":"factory_reset.png","alt":"Factory reset","type":"image","variants":[{"traits":["1x","light"],"url":"\/images\/factory_reset.png"}]},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"https://apps.apple.com/pl/app/tedee/id1481874162?l=pl":{"titleInlineContent":[{"text":"Tedee mobile app","type":"text"}],"title":"Tedee mobile app","identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","url":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","type":"link"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"https://tedee.com":{"identifier":"https:\/\/tedee.com","titleInlineContent":[{"type":"text","text":"tedee.com"}],"type":"link","url":"https:\/\/tedee.com","title":"tedee.com"},"remove_from_account.png":{"variants":[{"url":"\/images\/remove_from_account.png","traits":["1x","light"]}],"identifier":"remove_from_account.png","alt":"Remove from account","type":"image"},"https://portal.tedee.com":{"identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"https://tedee.com/knowledge-base/factory-reset/":{"titleInlineContent":[{"text":"here","type":"text"}],"title":"here","identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","url":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","type":"link"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"}}} \ No newline at end of file +{"kind":"project","hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/requirements"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"category":"How to add Lock","categoryPathComponent":"how-to-add-lock","role":"project","title":"Requirements"},"sections":[{"content":[{"inlineContent":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"paragraph"}],"chapter":"Before You start","title":"Requirements","kind":"hero","estimatedTimeInMinutes":5},{"kind":"tasks","tasks":[{"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[]}],"stepsSection":[{"caption":[],"type":"step","media":"lock_pro.png","code":null,"content":[{"inlineContent":[{"type":"text","text":"You need to have Tedee Pro or Tedee Go lock. You can acquire one at "},{"type":"reference","isActive":true,"identifier":"https:\/\/tedee.com"},{"text":".","type":"text"}],"type":"paragraph"}],"runtimePreview":null},{"media":"factory_reset.png","code":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Your lock must be factory reseted, you can check how to do it ","type":"text"},{"identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","isActive":true,"type":"reference"},{"type":"text","text":"."}]}],"runtimePreview":null,"caption":[],"type":"step"},{"content":[{"inlineContent":[{"type":"text","text":"Your lock cannot be added to any account. If you added your lock before, you can delete it from account using Tedee app."}],"type":"paragraph"}],"caption":[],"media":"remove_from_account.png","code":null,"type":"step","runtimePreview":null}],"anchor":"Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},{"title":"Activation code","stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Activation code of your lock."}]}],"type":"step","runtimePreview":null,"media":"activation_code.png","caption":[],"code":null}],"contentSection":[{"content":[],"kind":"contentAndMedia","mediaPosition":"trailing"}],"anchor":"Activation-code"},{"stepsSection":[{"code":null,"content":[{"type":"paragraph","inlineContent":[{"text":"You should have a working Tedee account. You can create one from ","type":"text"},{"identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","isActive":true,"type":"reference"},{"type":"text","text":"."}]}],"runtimePreview":null,"media":"create_account.png","caption":[],"type":"step"}],"anchor":"Tedee-account","contentSection":[{"content":[],"mediaPosition":"trailing","kind":"contentAndMedia"}],"title":"Tedee account"}]},{"action":{"overridingTitle":"Get started","isActive":true,"overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"},"featuredEyebrow":"Tutorial","kind":"callToAction","title":"Personal Access Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"isActive":true,"type":"reference","identifier":"https:\/\/portal.tedee.com"},{"type":"text","text":"."}]}],"references":{"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"https://portal.tedee.com":{"type":"link","url":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"identifier":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"https://tedee.com":{"identifier":"https:\/\/tedee.com","titleInlineContent":[{"type":"text","text":"tedee.com"}],"type":"link","title":"tedee.com","url":"https:\/\/tedee.com"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"lock_pro.png":{"alt":"Tedee Pro","identifier":"lock_pro.png","variants":[{"traits":["1x","light"],"url":"\/images\/lock_pro.png"}],"type":"image"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"https://tedee.com/knowledge-base/factory-reset/":{"identifier":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/","titleInlineContent":[{"type":"text","text":"here"}],"type":"link","title":"here","url":"https:\/\/tedee.com\/knowledge-base\/factory-reset\/"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"remove_from_account.png":{"alt":"Remove from account","identifier":"remove_from_account.png","variants":[{"traits":["1x","light"],"url":"\/images\/remove_from_account.png"}],"type":"image"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"activation_code.png":{"identifier":"activation_code.png","variants":[{"url":"\/images\/activation_code.png","traits":["1x","light"]}],"type":"image","alt":"Activation code"},"factory_reset.png":{"alt":"Factory reset","identifier":"factory_reset.png","variants":[{"traits":["1x","light"],"url":"\/images\/factory_reset.png"}],"type":"image"},"https://apps.apple.com/pl/app/tedee/id1481874162?l=pl":{"identifier":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl","titleInlineContent":[{"type":"text","text":"Tedee mobile app"}],"type":"link","title":"Tedee mobile app","url":"https:\/\/apps.apple.com\/pl\/app\/tedee\/id1481874162?l=pl"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"create_account.png":{"alt":"Create account","identifier":"create_account.png","variants":[{"traits":["1x","light"],"url":"\/images\/create_account.png"}],"type":"image"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/secured-connection.json b/docs/data/tutorials/tedeelock/secured-connection.json index 8775793..85c914c 100644 --- a/docs/data/tutorials/tedeelock/secured-connection.json +++ b/docs/data/tutorials/tedeelock/secured-connection.json @@ -1 +1 @@ -{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/secured-connection"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"categoryPathComponent":"how-to-add-lock","role":"project","category":"How to add Lock","title":"Secured Connection"},"kind":"project","sections":[{"kind":"hero","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}]}],"estimatedTimeInMinutes":5,"chapter":"Secured connection with lock","title":"Secured Connection"},{"tasks":[{"contentSection":[{"kind":"contentAndMedia","mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We need to get certificate for this lock from Tedee API"}]}]}],"anchor":"Device-Certificate","title":"Device Certificate","stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Get previously saved mobile id."}]}],"caption":[{"type":"paragraph","inlineContent":[{"type":"text","text":"We will pass to this function device id that we get in a response from add lock request."}]}],"code":"secured_connection_01.swift","runtimePreview":null,"type":"step","media":null},{"type":"step","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"runtimePreview":"certificate_response.png","caption":[],"code":"secured_connection_02.swift","media":null},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract certificate and return TedeeCertificate."}]}],"runtimePreview":null,"type":"step","caption":[],"media":null,"code":"secured_connection_03.swift"}]},{"title":"Secured connection","stepsSection":[{"content":[{"type":"paragraph","inlineContent":[{"text":"With the certificate, we can make secured connection.","type":"text"}]}],"type":"step","code":"secured_connection_04.swift","runtimePreview":null,"media":null,"caption":[]}],"contentSection":[{"content":[{"type":"paragraph","inlineContent":[{"text":"Now, we can make secured connection to the lock.","type":"text"}]}],"mediaPosition":"trailing","kind":"contentAndMedia"}],"anchor":"Secured-connection"}],"kind":"tasks"},{"action":{"type":"reference","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"overridingTitle":"Get started"},"abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"featuredEyebrow":"Tutorial","kind":"callToAction","title":"Summary"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"]],"modules":[{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock"}]},{"projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock"},"references":{"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"secured_connection_04.swift":{"identifier":"secured_connection_04.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func securedConnection(serialNumber: TedeeSerialNumber, certificate: TedeeCertificate) async {"," try! await TedeeLockManager.shared.connect(serialNumber, certificate: certificate)"," }","}"],"fileName":"addLock.swift","highlights":[],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"secured_connection_01.swift":{"identifier":"secured_connection_01.swift","fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," }","}"],"type":"file","highlights":[],"fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"secured_connection_03.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," let dF = DateFormatter()"," dF.dateFormat = \"yyyy-MM-dd'T'HH:mm:ss.SSSSSSS'Z'\""," dF.locale = Locale(identifier: \"en_US_POSIX\")"," dF.timeZone = TimeZone(abbreviation: \"UTC\")"," let expirationDate = dF.date(from: result[\"expirationDate\"]!)"," "," return try! TedeeCertificate(certificate: result[\"certificate\"]!,"," expirationDate: expirationDate!,"," devicePublicKey: result[\"devicePublicKey\"]!,"," mobilePublicKey: result[\"mobilePublicKey\"]!)"," }","}"],"syntax":"swift","fileType":"swift","type":"file","highlights":[{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27},{"line":28}],"identifier":"secured_connection_03.swift","fileName":"addLock.swift"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"https://portal.tedee.com":{"titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"identifier":"https:\/\/portal.tedee.com","type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"certificate_response.png":{"type":"image","variants":[{"url":"\/images\/certificate_response.png","traits":["1x","light"]}],"identifier":"certificate_response.png","alt":"Certificate response"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"secured_connection_02.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"syntax":"swift","fileType":"swift","type":"file","highlights":[{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"identifier":"secured_connection_02.swift","fileName":"addLock.swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"}}} \ No newline at end of file +{"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","interfaceLanguage":"swift"},"kind":"project","hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","kind":"task"}]}]}]},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[{"kind":"hero","title":"Secured Connection","estimatedTimeInMinutes":5,"chapter":"Secured connection with lock","content":[{"type":"paragraph","inlineContent":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}]}]},{"tasks":[{"stepsSection":[{"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Get previously saved mobile id."}]}],"media":null,"type":"step","caption":[{"inlineContent":[{"text":"We will pass to this function device id that we get in a response from add lock request.","type":"text"}],"type":"paragraph"}],"code":"secured_connection_01.swift"},{"code":"secured_connection_02.swift","runtimePreview":"certificate_response.png","caption":[],"media":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Prepare and send request."}]}],"type":"step"},{"type":"step","content":[{"inlineContent":[{"type":"text","text":"Extract certificate and return TedeeCertificate."}],"type":"paragraph"}],"caption":[],"code":"secured_connection_03.swift","runtimePreview":null,"media":null}],"contentSection":[{"mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"text":"We need to get certificate for this lock from Tedee API","type":"text"}]}],"kind":"contentAndMedia"}],"anchor":"Device-Certificate","title":"Device Certificate"},{"contentSection":[{"kind":"contentAndMedia","mediaPosition":"trailing","content":[{"type":"paragraph","inlineContent":[{"text":"Now, we can make secured connection to the lock.","type":"text"}]}]}],"title":"Secured connection","stepsSection":[{"runtimePreview":null,"type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"With the certificate, we can make secured connection.","type":"text"}]}],"media":null,"caption":[],"code":"secured_connection_04.swift"}],"anchor":"Secured-connection"}],"kind":"tasks"},{"kind":"callToAction","title":"Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"featuredEyebrow":"Tutorial","action":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","isActive":true,"type":"reference","overridingTitle":"Get started","overridingTitleInlineContent":[{"text":"Get started","type":"text"}]}}],"metadata":{"title":"Secured Connection","category":"How to add Lock","categoryPathComponent":"how-to-add-lock","role":"project"},"variants":[{"paths":["\/tutorials\/tedeelock\/secured-connection"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"certificate_response.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/certificate_response.png"}],"alt":"Certificate response","identifier":"certificate_response.png","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"secured_connection_01.swift":{"highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," }","}"],"identifier":"secured_connection_01.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"secured_connection_04.swift":{"identifier":"secured_connection_04.swift","type":"file","content":["import Foundation","import TedeeLock","","class AddLock {"," func securedConnection(serialNumber: TedeeSerialNumber, certificate: TedeeCertificate) async {"," try! await TedeeLockManager.shared.connect(serialNumber, certificate: certificate)"," }","}"],"syntax":"swift","fileType":"swift","fileName":"addLock.swift","highlights":[]},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"secured_connection_02.swift":{"highlights":[{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"identifier":"secured_connection_02.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"https://portal.tedee.com":{"titleInlineContent":[{"text":"Tedee Portal","type":"text"}],"url":"https:\/\/portal.tedee.com","title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","type":"link"},"secured_connection_03.swift":{"highlights":[{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25},{"line":26},{"line":27},{"line":28}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func getCertificate(deviceId: Int) async -> TedeeCertificate {"," let mobileId = UserDefaults.standard.string(forKey: \"TedeeMobileId\")!"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/devicecertificate\/getformobile?MobileId=\\(mobileId)&DeviceId=\\(deviceId)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," let dF = DateFormatter()"," dF.dateFormat = \"yyyy-MM-dd'T'HH:mm:ss.SSSSSSS'Z'\""," dF.locale = Locale(identifier: \"en_US_POSIX\")"," dF.timeZone = TimeZone(abbreviation: \"UTC\")"," let expirationDate = dF.date(from: result[\"expirationDate\"]!)"," "," return try! TedeeCertificate(certificate: result[\"certificate\"]!,"," expirationDate: expirationDate!,"," devicePublicKey: result[\"devicePublicKey\"]!,"," mobilePublicKey: result[\"mobilePublicKey\"]!)"," }","}"],"identifier":"secured_connection_03.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/summary.json b/docs/data/tutorials/tedeelock/summary.json index ef5da01..552af38 100644 --- a/docs/data/tutorials/tedeelock/summary.json +++ b/docs/data/tutorials/tedeelock/summary.json @@ -1 +1 @@ -{"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/tutorials\/tedeelock\/summary"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"},"metadata":{"role":"project","category":"How to add Lock","categoryPathComponent":"how-to-add-lock","title":"Summary"},"sections":[{"kind":"hero","chapter":"Summary","estimatedTimeInMinutes":3,"title":"Summary","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}]}]},{"tasks":[{"contentSection":[{"kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"By the end of this section, you should have all the necessary work done and you should be able to successfully add you lock to Tedee account and securely connect to it.","type":"text"}]}],"mediaPosition":"trailing"}],"title":"Summary","stepsSection":[{"caption":[],"content":[{"type":"paragraph","inlineContent":[{"text":"Configure signed date time provider.","type":"text"}]}],"type":"step","media":null,"code":"summary_01.swift","runtimePreview":null},{"code":"summary_02.swift","type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"Register mobile.","type":"text"}]}],"media":null,"runtimePreview":null,"caption":[]},{"caption":[],"runtimePreview":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Get serial number.","type":"text"}]}],"type":"step","media":null,"code":"summary_03.swift"},{"media":null,"runtimePreview":null,"type":"step","code":"summary_04.swift","content":[{"inlineContent":[{"text":"Make unsecured connection to the lock.","type":"text"}],"type":"paragraph"}],"caption":[]},{"content":[{"type":"paragraph","inlineContent":[{"text":"Get add lock data.","type":"text"}]}],"caption":[],"media":null,"code":"summary_05.swift","runtimePreview":null,"type":"step"},{"type":"step","media":null,"caption":[],"code":"summary_06.swift","content":[{"inlineContent":[{"text":"Add lock to Tedee account and get register lock data.","type":"text"}],"type":"paragraph"}],"runtimePreview":null},{"code":"summary_07.swift","type":"step","runtimePreview":null,"content":[{"inlineContent":[{"text":"Register lock.","type":"text"}],"type":"paragraph"}],"media":null,"caption":[]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Get lock certificate."}]}],"caption":[],"type":"step","media":null,"code":"summary_08.swift","runtimePreview":null},{"media":null,"code":"summary_09.swift","type":"step","caption":[],"content":[{"inlineContent":[{"type":"text","text":"Make secured connection to the lock."}],"type":"paragraph"}],"runtimePreview":null}],"anchor":"Summary"}],"kind":"tasks"}],"kind":"project","hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","kind":"task"}]}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"]]},"references":{"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"summary_04.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," }","}"],"identifier":"summary_04.swift","type":"file","highlights":[{"line":9}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"summary_08.swift":{"fileName":"addLock.swift","identifier":"summary_08.swift","type":"file","highlights":[{"line":13}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," }","}"],"fileType":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"summary_09.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," await securedConnection(serialNumber: serialNumber, certificate: certificate)"," }","}"],"identifier":"summary_09.swift","type":"file","highlights":[{"line":14}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"summary_02.swift":{"fileName":"addLock.swift","identifier":"summary_02.swift","type":"file","highlights":[{"line":7}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," }","}"],"fileType":"swift"},"https://portal.tedee.com":{"type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"text":"Tedee Portal","type":"text"}]},"summary_07.swift":{"fileName":"addLock.swift","identifier":"summary_07.swift","type":"file","highlights":[{"line":12}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," }","}"],"fileType":"swift"},"summary_05.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," }","}"],"identifier":"summary_05.swift","type":"file","highlights":[{"line":10}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"summary_03.swift":{"fileName":"addLock.swift","identifier":"summary_03.swift","type":"file","highlights":[{"line":8}],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," }","}"],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"summary_06.swift":{"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," }","}"],"identifier":"summary_06.swift","type":"file","highlights":[{"line":11}],"fileType":"swift","fileName":"addLock.swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"summary_01.swift":{"fileName":"addLock.swift","identifier":"summary_01.swift","type":"file","highlights":[],"syntax":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," }","}"],"fileType":"swift"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"}}} \ No newline at end of file +{"sections":[{"title":"Summary","chapter":"Summary","estimatedTimeInMinutes":3,"content":[{"inlineContent":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"type":"paragraph"}],"kind":"hero"},{"kind":"tasks","tasks":[{"stepsSection":[{"runtimePreview":null,"media":null,"code":"summary_01.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Configure signed date time provider."}]}],"caption":[],"type":"step"},{"code":"summary_02.swift","runtimePreview":null,"caption":[],"media":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Register mobile.","type":"text"}]}],"type":"step"},{"type":"step","content":[{"inlineContent":[{"type":"text","text":"Get serial number."}],"type":"paragraph"}],"caption":[],"code":"summary_03.swift","runtimePreview":null,"media":null},{"content":[{"inlineContent":[{"type":"text","text":"Make unsecured connection to the lock."}],"type":"paragraph"}],"caption":[],"type":"step","media":null,"code":"summary_04.swift","runtimePreview":null},{"type":"step","content":[{"inlineContent":[{"text":"Get add lock data.","type":"text"}],"type":"paragraph"}],"caption":[],"code":"summary_05.swift","media":null,"runtimePreview":null},{"caption":[],"code":"summary_06.swift","content":[{"inlineContent":[{"type":"text","text":"Add lock to Tedee account and get register lock data."}],"type":"paragraph"}],"type":"step","runtimePreview":null,"media":null},{"caption":[],"media":null,"content":[{"type":"paragraph","inlineContent":[{"text":"Register lock.","type":"text"}]}],"type":"step","code":"summary_07.swift","runtimePreview":null},{"runtimePreview":null,"caption":[],"media":null,"code":"summary_08.swift","type":"step","content":[{"inlineContent":[{"text":"Get lock certificate.","type":"text"}],"type":"paragraph"}]},{"type":"step","media":null,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Make secured connection to the lock."}]}],"code":"summary_09.swift","runtimePreview":null,"caption":[]}],"title":"Summary","contentSection":[{"kind":"contentAndMedia","content":[{"inlineContent":[{"type":"text","text":"By the end of this section, you should have all the necessary work done and you should be able to successfully add you lock to Tedee account and securely connect to it."}],"type":"paragraph"}],"mediaPosition":"trailing"}],"anchor":"Summary"}]}],"kind":"project","schemaVersion":{"patch":0,"minor":3,"major":0},"variants":[{"paths":["\/tutorials\/tedeelock\/summary"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"},"metadata":{"title":"Summary","categoryPathComponent":"how-to-add-lock","role":"project","category":"How to add Lock"},"hierarchy":{"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary"]],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}]},"references":{"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"summary_04.swift":{"highlights":[{"line":9}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," }","}"],"identifier":"summary_04.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"summary_01.swift":{"highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," }","}"],"identifier":"summary_01.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_08.swift":{"highlights":[{"line":13}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," }","}"],"identifier":"summary_08.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"summary_03.swift":{"highlights":[{"line":8}],"identifier":"summary_03.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," }","}"],"fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"summary_07.swift":{"highlights":[{"line":12}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," }","}"],"identifier":"summary_07.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_06.swift":{"highlights":[{"line":11}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," }","}"],"identifier":"summary_06.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"summary_09.swift":{"highlights":[{"line":14}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," let registerLockData = await addLockToAccount(addLock: addLockData)"," await registerLock(serialNumber: serialNumber, registerLock: registerLockData)"," let certificate = await getCertificate(deviceId: registerLockData.id)"," await securedConnection(serialNumber: serialNumber, certificate: certificate)"," }","}"],"identifier":"summary_09.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_05.swift":{"highlights":[{"line":10}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," let serialNumber = await getSerialNumber()"," await unsecuredConnection(serialNumber: serialNumber)"," let addLockData = await getAddLockData(serialNumber: serialNumber)"," }","}"],"identifier":"summary_05.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"summary_02.swift":{"highlights":[{"line":7}],"content":["import Foundation","import TedeeLock","","class AddLock {"," func addLock() async {"," await TedeeLockManager.shared.setSignedDateTimeProvider(self)"," await registerMobile()"," }","}"],"identifier":"summary_02.swift","fileType":"swift","syntax":"swift","fileName":"addLock.swift","type":"file"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"https://portal.tedee.com":{"title":"Tedee Portal","url":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"type":"link","identifier":"https:\/\/portal.tedee.com"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"}}} \ No newline at end of file diff --git a/docs/data/tutorials/tedeelock/unsecured-connection.json b/docs/data/tutorials/tedeelock/unsecured-connection.json index d3b8eb9..4277785 100644 --- a/docs/data/tutorials/tedeelock/unsecured-connection.json +++ b/docs/data/tutorials/tedeelock/unsecured-connection.json @@ -1 +1 @@ -{"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[{"chapter":"Connect and get lock data","title":"Unsecured Connection","estimatedTimeInMinutes":10,"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}]}],"kind":"hero"},{"tasks":[{"title":"Registering mobile","stepsSection":[{"type":"step","caption":[],"code":"unsecured_connection_01.swift","runtimePreview":null,"content":[{"inlineContent":[{"type":"text","text":"Configure your Personal Access Token."}],"type":"paragraph"}],"media":null},{"type":"step","content":[{"inlineContent":[{"text":"Check if you already register mobile.","type":"text"}],"type":"paragraph"}],"media":null,"runtimePreview":null,"caption":[],"code":"unsecured_connection_02.swift"},{"caption":[],"content":[{"type":"paragraph","inlineContent":[{"text":"Prepare and send request.","type":"text"}]}],"code":"unsecured_connection_03.swift","type":"step","media":null,"runtimePreview":"mobile_registration.png"},{"caption":[],"code":"unsecured_connection_04.swift","type":"step","content":[{"inlineContent":[{"text":"Extract mobile id from response and save it.","type":"text"}],"type":"paragraph"}],"media":null,"runtimePreview":null}],"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"inlineContent":[{"text":"To register mobile in Tedee API we need public key that the sdk is generating for you. Registration should done only once.","type":"text"}],"type":"paragraph"}]}],"anchor":"Registering-mobile"},{"title":"Serial number ","contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Serial number is required to make any connection to the lock. At this point we can get it from Tedee API by providing the activation code."}]}]}],"stepsSection":[{"content":[{"inlineContent":[{"text":"Configure activation code of your Tedee Pro or Tedee GO.","type":"text"}],"type":"paragraph"}],"type":"step","caption":[],"runtimePreview":null,"media":null,"code":"unsecured_connection_05.swift"},{"runtimePreview":"serial_number_response.png","content":[{"inlineContent":[{"text":"Prepare and send request.","type":"text"}],"type":"paragraph"}],"code":"unsecured_connection_06.swift","type":"step","caption":[],"media":null},{"caption":[],"media":null,"runtimePreview":null,"code":"unsecured_connection_07.swift","type":"step","content":[{"inlineContent":[{"text":"Extract serial number from response","type":"text"}],"type":"paragraph"}]}],"anchor":"Serial-number"},{"stepsSection":[{"runtimePreview":null,"caption":[],"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"By passing TedeeSerialNumber from previous section, we can made unsecured connection to the lock."}]}],"code":"unsecured_connection_08.swift","type":"step","media":null}],"title":"Unsecured connection","anchor":"Unsecured-connection","contentSection":[{"content":[{"inlineContent":[{"text":"With serial number, we can now connect to the lock.","type":"text"}],"type":"paragraph"}],"mediaPosition":"trailing","kind":"contentAndMedia"}]}],"kind":"tasks"},{"abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data","kind":"callToAction","action":{"overridingTitleInlineContent":[{"text":"Get started","type":"text"}],"isActive":true,"type":"reference","overridingTitle":"Get started","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"featuredEyebrow":"Tutorial"}],"metadata":{"categoryPathComponent":"how-to-add-lock","title":"Unsecured Connection","role":"project","category":"How to add Lock"},"hierarchy":{"modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements"},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","kind":"task"}]}]},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"identifier":{"url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","interfaceLanguage":"swift"},"kind":"project","variants":[{"paths":["\/tutorials\/tedeelock\/unsecured-connection"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"title":"Provide Signed date time","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","role":"pseudoSymbol","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","type":"section"},"mobile_registration.png":{"identifier":"mobile_registration.png","alt":"Mobile registration response","type":"image","variants":[{"url":"\/images\/mobile_registration.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/how-to-add-lock":{"role":"overview","kind":"overview","type":"topic","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","title":"How to add Lock"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"role":"project","estimatedTime":"2min","kind":"project","type":"topic","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","title":"Register Lock"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"role":"pseudoSymbol","kind":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","title":"Tedee account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","abstract":[{"text":"Here we will register the lock, this is required to made secured connection later.","type":"text"}],"role":"pseudoSymbol","kind":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","type":"section","title":"Register Lock"},"unsecured_connection_03.swift":{"fileName":"addLock.swift","highlights":[{"line":2},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25}],"identifier":"unsecured_connection_03.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","title":"Unsecured connection"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","abstract":[],"role":"article","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","type":"topic","title":"Add lock to Tedee account"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/summary","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"title":"Serial number ","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol"},"unsecured_connection_07.swift":{"fileName":"addLock.swift","highlights":[{"line":2},{"line":7},{"line":8},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"identifier":"unsecured_connection_07.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() await -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activatio)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return try! TedeeSerialNumber(serialNumber: result[\"serialNumber\"]!)"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","url":"\/tutorials\/tedeelock\/summary#Summary","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","title":"Unsecured Connection","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"estimatedTime":"10min","url":"\/tutorials\/tedeelock\/unsecured-connection","type":"topic","kind":"project","role":"project"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","role":"article","abstract":[],"url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","kind":"article","type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"estimatedTime":"5min","kind":"project","role":"project","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","url":"\/tutorials\/tedeelock\/pak-set-up","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"topic"},"unsecured_connection_01.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"unsecured_connection_01.swift","syntax":"swift","type":"file","fileType":"swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\"","}"]},"unsecured_connection_08.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"unsecured_connection_08.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," func unsecuredConnection(serialNumber: TedeeSerialNumber) async {"," do {"," try await TedeeLockManager.shared.unsecureConnect(serialNumber)"," } catch {"," fatalError(\"Connection failure: \\(error)\")"," }"," }","}"]},"https://portal.tedee.com":{"title":"Tedee Portal","identifier":"https:\/\/portal.tedee.com","titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"url":"https:\/\/portal.tedee.com","type":"link"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"role":"pseudoSymbol","kind":"section","type":"section","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"kind":"section","role":"pseudoSymbol","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","abstract":[{"text":"Here we will configure Personal Access Key in ","type":"text"},{"identifier":"https:\/\/portal.tedee.com","isActive":true,"type":"reference"},{"text":".","type":"text"}],"type":"section"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"role":"project","estimatedTime":"3min","kind":"project","type":"topic","abstract":[{"text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow.","type":"text"}],"url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","title":"Summary"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"title":"Registering mobile","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","role":"pseudoSymbol","abstract":[{"text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add.","type":"text"}],"url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","type":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","title":"Secured Connection","role":"project","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"kind":"section","type":"section","title":"Device Certificate","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","role":"pseudoSymbol","kind":"section","title":"Add Lock","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"kind":"article","role":"article","title":"Before You start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","url":"\/tutorials\/how-to-add-lock\/before-you-start","abstract":[],"type":"topic"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"role":"pseudoSymbol","kind":"section","type":"section","title":"Get lock data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}]},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","abstract":[{"text":"Here we will make secured connection to the added and registered lock.","type":"text"}],"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","kind":"section","role":"pseudoSymbol"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","kind":"article","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","abstract":[],"title":"Connect and get lock data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","role":"article"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","title":"Activation code","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"type":"section","kind":"section","url":"\/tutorials\/tedeelock\/requirements#Activation-code","role":"pseudoSymbol"},"unsecured_connection_04.swift":{"fileName":"addLock.swift","highlights":[{"line":26},{"line":27},{"line":28},{"line":29},{"line":30},{"line":31}],"identifier":"unsecured_connection_04.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," let mobileId = result[\"id\"]!"," "," UserDefaults.standard.setValue(mobileId, forKey: \"TedeeMobileId\")"," }","}"]},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"role":"project","estimatedTime":"5min","kind":"project","abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"type":"topic","url":"\/tutorials\/tedeelock\/get-lock-data","title":"Get Lock data","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"},"unsecured_connection_02.swift":{"fileName":"addLock.swift","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10}],"identifier":"unsecured_connection_02.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," }","}"]},"unsecured_connection_06.swift":{"fileName":"addLock.swift","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"identifier":"unsecured_connection_06.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() async -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activationCode)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"]},"serial_number_response.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/serial_number_response.png"}],"identifier":"serial_number_response.png","alt":"Serial number response","type":"image"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"url":"\/tutorials\/tedeelock\/requirements","abstract":[{"text":"Here are all the requirements that you need to prepare to be able to complete this tutorial.","type":"text"}],"estimatedTime":"5min","role":"project","kind":"project","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","type":"topic","title":"Requirements"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"title":"Add Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","role":"project","abstract":[{"text":"Here wi will add the lock to Tedee account via Tedee API","type":"text"}],"url":"\/tutorials\/tedeelock\/add-lock","kind":"project","type":"topic","estimatedTime":"5min"},"unsecured_connection_05.swift":{"fileName":"addLock.swift","highlights":[],"identifier":"unsecured_connection_05.swift","type":"file","syntax":"swift","fileType":"swift","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\"","}"]}}} \ No newline at end of file +{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection"},"kind":"project","hierarchy":{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","modules":[{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","kind":"task"}]},{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up"}]},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","kind":"task"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection"}]},{"sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data"}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"},{"projects":[{"sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","kind":"task"}],"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account"},{"projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","sections":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","kind":"task"},{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection"}]}],"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock"},{"reference":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","projects":[{"reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","sections":[{"kind":"task","reference":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary"}]}]}],"paths":[["doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/$volume","doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"paths":["\/tutorials\/tedeelock\/unsecured-connection"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"category":"How to add Lock","categoryPathComponent":"how-to-add-lock","role":"project","title":"Unsecured Connection"},"sections":[{"kind":"hero","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}]}],"estimatedTimeInMinutes":10,"chapter":"Connect and get lock data","title":"Unsecured Connection"},{"kind":"tasks","tasks":[{"stepsSection":[{"media":null,"caption":[],"type":"step","content":[{"inlineContent":[{"text":"Configure your Personal Access Token.","type":"text"}],"type":"paragraph"}],"runtimePreview":null,"code":"unsecured_connection_01.swift"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Check if you already register mobile."}]}],"code":"unsecured_connection_02.swift","type":"step","media":null,"caption":[],"runtimePreview":null},{"runtimePreview":"mobile_registration.png","content":[{"inlineContent":[{"text":"Prepare and send request.","type":"text"}],"type":"paragraph"}],"caption":[],"type":"step","media":null,"code":"unsecured_connection_03.swift"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Extract mobile id from response and save it."}]}],"caption":[],"type":"step","media":null,"code":"unsecured_connection_04.swift","runtimePreview":null}],"title":"Registering mobile","contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"inlineContent":[{"type":"text","text":"To register mobile in Tedee API we need public key that the sdk is generating for you. Registration should done only once."}],"type":"paragraph"}]}],"anchor":"Registering-mobile"},{"stepsSection":[{"caption":[],"runtimePreview":null,"type":"step","media":null,"code":"unsecured_connection_05.swift","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Configure activation code of your Tedee Pro or Tedee GO."}]}]},{"caption":[],"code":"unsecured_connection_06.swift","type":"step","content":[{"inlineContent":[{"text":"Prepare and send request.","type":"text"}],"type":"paragraph"}],"media":null,"runtimePreview":"serial_number_response.png"},{"content":[{"inlineContent":[{"type":"text","text":"Extract serial number from response"}],"type":"paragraph"}],"code":"unsecured_connection_07.swift","caption":[],"type":"step","media":null,"runtimePreview":null}],"title":"Serial number ","anchor":"Serial-number","contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"inlineContent":[{"text":"Serial number is required to make any connection to the lock. At this point we can get it from Tedee API by providing the activation code.","type":"text"}],"type":"paragraph"}]}]},{"contentSection":[{"mediaPosition":"trailing","kind":"contentAndMedia","content":[{"type":"paragraph","inlineContent":[{"text":"With serial number, we can now connect to the lock.","type":"text"}]}]}],"stepsSection":[{"code":"unsecured_connection_08.swift","runtimePreview":null,"caption":[],"type":"step","content":[{"type":"paragraph","inlineContent":[{"text":"By passing TedeeSerialNumber from previous section, we can made unsecured connection to the lock.","type":"text"}]}],"media":null}],"title":"Unsecured connection","anchor":"Unsecured-connection"}]},{"action":{"identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","overridingTitleInlineContent":[{"type":"text","text":"Get started"}],"isActive":true,"type":"reference","overridingTitle":"Get started"},"abstract":[{"text":"Here we will get all necessary data from lock, that are required to add lock to your account.","type":"text"}],"kind":"callToAction","title":"Get Lock data","featuredEyebrow":"Tutorial"}],"references":{"doc://TedeeLock/tutorials/TedeeLock/pak-set-up#Personal-Access-Key":{"title":"Personal Access Key","type":"section","url":"\/tutorials\/tedeelock\/pak-set-up#Personal-Access-Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up#Personal-Access-Key","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}],"role":"pseudoSymbol","kind":"section"},"unsecured_connection_05.swift":{"identifier":"unsecured_connection_05.swift","highlights":[],"fileType":"swift","type":"file","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\"","}"],"syntax":"swift","fileName":"addLock.swift"},"mobile_registration.png":{"type":"image","alt":"Mobile registration response","identifier":"mobile_registration.png","variants":[{"url":"\/images\/mobile_registration.png","traits":["1x","light"]}]},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Registering-mobile":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Registering-mobile","url":"\/tutorials\/tedeelock\/unsecured-connection#Registering-mobile","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Registering mobile"},"unsecured_connection_08.swift":{"type":"file","syntax":"swift","fileType":"swift","fileName":"addLock.swift","highlights":[],"content":["import Foundation","import TedeeLock","","class AddLock {"," func unsecuredConnection(serialNumber: TedeeSerialNumber) async {"," do {"," try await TedeeLockManager.shared.unsecureConnect(serialNumber)"," } catch {"," fatalError(\"Connection failure: \\(error)\")"," }"," }","}"],"identifier":"unsecured_connection_08.swift"},"doc://TedeeLock/tutorials/TedeeLock/add-lock#Add-Lock":{"title":"Add Lock","type":"section","url":"\/tutorials\/tedeelock\/add-lock#Add-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock#Add-Lock","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"role":"pseudoSymbol","kind":"section"},"serial_number_response.png":{"variants":[{"traits":["1x","light"],"url":"\/images\/serial_number_response.png"}],"type":"image","alt":"Serial number response","identifier":"serial_number_response.png"},"unsecured_connection_01.swift":{"fileName":"addLock.swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\"","}"],"type":"file","highlights":[],"identifier":"unsecured_connection_01.swift","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/pak-set-up":{"url":"\/tutorials\/tedeelock\/pak-set-up","type":"topic","title":"Personal Access Key","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/pak-set-up","estimatedTime":"5min","role":"project","kind":"project","abstract":[{"type":"text","text":"Here we will configure Personal Access Key in "},{"type":"reference","identifier":"https:\/\/portal.tedee.com","isActive":true},{"type":"text","text":"."}]},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-account":{"title":"Tedee account","type":"section","url":"\/tutorials\/tedeelock\/requirements#Tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-account","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get Lock data"},"doc://TedeeLock/tutorials/TedeeLock/add-lock":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/add-lock","url":"\/tutorials\/tedeelock\/add-lock","kind":"project","role":"project","abstract":[{"type":"text","text":"Here wi will add the lock to Tedee account via Tedee API"}],"title":"Add Lock"},"unsecured_connection_06.swift":{"fileName":"addLock.swift","content":["import Foundation","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() async -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activationCode)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"type":"file","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10},{"line":11},{"line":12},{"line":13},{"line":14}],"identifier":"unsecured_connection_06.swift","fileType":"swift","syntax":"swift"},"unsecured_connection_03.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," }","}"],"type":"file","highlights":[{"line":2},{"line":11},{"line":12},{"line":13},{"line":14},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19},{"line":20},{"line":21},{"line":22},{"line":23},{"line":24},{"line":25}],"identifier":"unsecured_connection_03.swift","fileType":"swift","syntax":"swift"},"unsecured_connection_02.swift":{"fileName":"addLock.swift","content":["import Foundation","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," }","}"],"type":"file","highlights":[{"line":5},{"line":6},{"line":7},{"line":8},{"line":9},{"line":10}],"identifier":"unsecured_connection_02.swift","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/how-to-add-lock":{"title":"How to add Lock","type":"topic","url":"\/tutorials\/how-to-add-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock","abstract":[{"type":"text","text":"This tutorial will show you basic steps that are needed in order to add lock to Tedee account, register the lock device and securely connect to it."}],"role":"overview","kind":"overview"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Serial-number":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Serial-number","url":"\/tutorials\/tedeelock\/unsecured-connection#Serial-number","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Serial number "},"doc://TedeeLock/tutorials/TedeeLock/summary#Summary":{"title":"Summary","type":"section","url":"\/tutorials\/tedeelock\/summary#Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary#Summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/requirements":{"type":"topic","estimatedTime":"5min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements","url":"\/tutorials\/tedeelock\/requirements","kind":"project","role":"project","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Requirements"},"doc://TedeeLock/tutorials/how-to-add-lock/Before-You-start":{"title":"Before You start","type":"topic","url":"\/tutorials\/how-to-add-lock\/before-you-start","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Before-You-start","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/TedeeLock/register-lock":{"estimatedTime":"2min","title":"Register Lock","type":"topic","url":"\/tutorials\/tedeelock\/register-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/register-lock#Register-Lock":{"title":"Register Lock","type":"section","url":"\/tutorials\/tedeelock\/register-lock#Register-Lock","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/register-lock#Register-Lock","abstract":[{"type":"text","text":"Here we will register the lock, this is required to made secured connection later."}],"role":"pseudoSymbol","kind":"section"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection":{"estimatedTime":"5min","title":"Secured Connection","type":"topic","url":"\/tutorials\/tedeelock\/secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Provide-Signed-date-time":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Provide-Signed-date-time","url":"\/tutorials\/tedeelock\/get-lock-data#Provide-Signed-date-time","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Provide Signed date time"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection#Unsecured-connection":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection#Unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection#Unsecured-connection","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured connection"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Device-Certificate":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Device-Certificate","url":"\/tutorials\/tedeelock\/secured-connection#Device-Certificate","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"title":"Device Certificate"},"doc://TedeeLock/tutorials/how-to-add-lock/Secured-connection-with-lock":{"title":"Secured connection with lock","type":"topic","url":"\/tutorials\/how-to-add-lock\/secured-connection-with-lock","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Secured-connection-with-lock","kind":"article","abstract":[],"role":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Summary":{"url":"\/tutorials\/how-to-add-lock\/summary","type":"topic","title":"Summary","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Summary","role":"article","kind":"article","abstract":[]},"https://portal.tedee.com":{"titleInlineContent":[{"type":"text","text":"Tedee Portal"}],"identifier":"https:\/\/portal.tedee.com","type":"link","url":"https:\/\/portal.tedee.com","title":"Tedee Portal"},"unsecured_connection_07.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let activationCode = \"195002EnTkXbEM\""," "," func getSerialNumber() await -> TedeeSerialNumber {"," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/device\/getserialnumber?ActivationCode=\\(activatio)\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"GET\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," "," return try! TedeeSerialNumber(serialNumber: result[\"serialNumber\"]!)"," }","}"],"type":"file","highlights":[{"line":2},{"line":7},{"line":8},{"line":15},{"line":16},{"line":17},{"line":18},{"line":19}],"identifier":"unsecured_connection_07.swift","fileType":"swift","syntax":"swift"},"unsecured_connection_04.swift":{"fileName":"addLock.swift","content":["import Foundation","import TedeeLock","","class AddLock {"," let pak = \"TYINKJ.L7kw8UGczHCOsPovPG\/vyfG4VmWwIOX+UUu1Uw3La4c=\""," "," func registerMobile() async {"," guard UserDefaults.standard.string(forKey: \"TedeeMobileId\") == nil else {"," return"," }"," "," let requestURL = URL(string: \"https:\/\/api.tedee.com\/api\/v1.32\/my\/mobile\")!"," var request = URLRequest(url: requestURL)"," request.httpMethod = \"POST\""," request.addValue(\"application\/json\", forHTTPHeaderField: \"Content-Type\")"," request.addValue(\"application\/json\", forHTTPHeaderField: \"accept\")"," request.addValue(\"PersonalKey \\(pak)\", forHTTPHeaderField: \"Authorization\")"," let bodyDictionary: [String: Any] = ["," \"name\": \"SDK\","," \"operatingSystem\": 0,"," \"publicKey\": TedeeLockManager.publicKey"," ]"," request.httpBody = try! JSONSerialization.data(withJSONObject: bodyDictionary)"," "," let response = try! await URLSession.shared.data(for: request)"," "," let responseDictionary = try! JSONSerialization.jsonObject(with: response.0) as! [String: Any]"," let result = responseDictionary[\"result\"] as! [String: String]"," let mobileId = result[\"id\"]!"," "," UserDefaults.standard.setValue(mobileId, forKey: \"TedeeMobileId\")"," }","}"],"type":"file","highlights":[{"line":26},{"line":27},{"line":28},{"line":29},{"line":30},{"line":31}],"identifier":"unsecured_connection_04.swift","fileType":"swift","syntax":"swift"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Activation-code":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Activation-code","url":"\/tutorials\/tedeelock\/requirements#Activation-code","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Activation code"},"doc://TedeeLock/tutorials/how-to-add-lock/Add-lock-to-Tedee-account":{"title":"Add lock to Tedee account","type":"topic","url":"\/tutorials\/how-to-add-lock\/add-lock-to-tedee-account","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Add-lock-to-Tedee-account","abstract":[],"role":"article","kind":"article"},"doc://TedeeLock/tutorials/how-to-add-lock/Connect-and-get-lock-data":{"type":"topic","identifier":"doc:\/\/TedeeLock\/tutorials\/how-to-add-lock\/Connect-and-get-lock-data","url":"\/tutorials\/how-to-add-lock\/connect-and-get-lock-data","kind":"article","role":"article","abstract":[],"title":"Connect and get lock data"},"doc://TedeeLock/tutorials/TedeeLock/unsecured-connection":{"type":"topic","estimatedTime":"10min","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/unsecured-connection","url":"\/tutorials\/tedeelock\/unsecured-connection","kind":"project","role":"project","abstract":[{"type":"text","text":"Here we will register mobile in Tedee API, we will get serial number of the lock from activation code and then we will make unsecured connection to the lock that we want to add."}],"title":"Unsecured Connection"},"doc://TedeeLock/tutorials/TedeeLock/get-lock-data#Get-lock-data":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/get-lock-data#Get-lock-data","url":"\/tutorials\/tedeelock\/get-lock-data#Get-lock-data","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here we will get all necessary data from lock, that are required to add lock to your account."}],"title":"Get lock data"},"doc://TedeeLock/tutorials/TedeeLock/requirements#Tedee-Pro-or-Tedee-GO":{"type":"section","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/requirements#Tedee-Pro-or-Tedee-GO","url":"\/tutorials\/tedeelock\/requirements#Tedee-Pro-or-Tedee-GO","kind":"section","role":"pseudoSymbol","abstract":[{"type":"text","text":"Here are all the requirements that you need to prepare to be able to complete this tutorial."}],"title":"Tedee Pro or Tedee GO"},"doc://TedeeLock/tutorials/TedeeLock/summary":{"estimatedTime":"3min","title":"Summary","type":"topic","url":"\/tutorials\/tedeelock\/summary","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/summary","abstract":[{"type":"text","text":"Here we will combine all the set up and functions that we prepared previously to achieve add lock flow."}],"role":"project","kind":"project"},"doc://TedeeLock/tutorials/TedeeLock/secured-connection#Secured-connection":{"title":"Secured connection","type":"section","url":"\/tutorials\/tedeelock\/secured-connection#Secured-connection","identifier":"doc:\/\/TedeeLock\/tutorials\/TedeeLock\/secured-connection#Secured-connection","abstract":[{"type":"text","text":"Here we will make secured connection to the added and registered lock."}],"role":"pseudoSymbol","kind":"section"}}} \ No newline at end of file diff --git a/docs/index/availability.index b/docs/index/availability.index index 03caa17e149b5844224354b29d0f07bf114d7779..1fcad050137fcea6082d76fc1a0bdf5067e8923e 100644 GIT binary patch delta 42 qcmcb{agAexDl?D2*(G5Sdj}w)p*h)*S&RqF78L^vYz}5-W&{8P{|d_h delta 42 scmcb{agAexDl?CU<|Sbfe={Iq?=abrS&T delta 44 zcmZo@;A;S)EsO#Uj1#u=H!x}1Pq*677&iUDenyGuGxjrTv|rfIxc$O@CW8Y2ZMG4g diff --git a/docs/metadata.json b/docs/metadata.json index d86f2ca..178d0e2 100644 --- a/docs/metadata.json +++ b/docs/metadata.json @@ -1 +1 @@ -{"bundleIdentifier":"TedeeLock","bundleDisplayName":"TedeeLock","schemaVersion":{"minor":1,"major":0,"patch":0}} \ No newline at end of file +{"bundleDisplayName":"TedeeLock","bundleIdentifier":"TedeeLock","schemaVersion":{"minor":1,"major":0,"patch":0}} \ No newline at end of file

    z1X_FY2-n(eJWVe(ow!>iJzg#(#5mZpGu>o~+8+7;St;B7OcJB$D4UlYSu8#i_rF`C5PRWEo3>wS@K= zPb}oQgl7?h*{r)3vxrJljK)W1%QXtl9^Wi%uSRg#3o)iI($YRT;PxNVwY+54O*RYLJUU;wx+o&y(X%^V z>m0SvQL5d%f=o$~B?1D15us&|EC-ST%RGCqM;19Vx>6;UoMY%UL%^|)i;D1+2Z+>Z z9dNVV&_}R5Sz->UV_owZf2_jHuVqmOqTxnC`u$QqdS|-9V66{ zO=g0Hnf=uzP8L_&8q1l%+LnbGuNn)x-1Y1iFw~JW;`H??=aI$8EQ*yfFV7DyF+~npC%}o_p!GwR$8^teG5Abqgt; zv3{ZbPp;^ueRvPjj^&EiBH+HvaG7QQvMTE}bd1&8iQGTeNo5iJ^tg#Zam>e;P)ykC zRf)rPV&%{V7SvvNB()oDZD&iTgkdMbff)=n+g;JgDmt2?RWiE?{M0x)-it3Q@2p`Q zBYX48mzAOJJuPV1KN|OQdIbutshmw(VegJO{U%@0m{CoBUUg)wi09sv_9L>`F zosY!`cOi~sb>NQ>NAFB6((6GWZ>ryT9gOl2&Ff!-a+@Y{vo6!bT9#9l$bAlJA6+Uc z@(=xswU2^J)`GU_ccA65s}2Y5y-#&-0v%+V$Foz>#PEI1)&M^nB-3#HpkB6gm1~$L zuM;2k+W`0|EsrtA(2(3HHUnDDONQQ^!)?w~&(OmJC`B?N6#9#7v#p(vGzg z8$_tLwF0WLSoK)bY4-KF?2blOSd*-xITqIu88;pz)`KpN zz==@}ircj*D~si>!}2hTCC9jx(kvZff6VI~5W7_N)HY{N^#P3LVV?+w!_r>3gEkhL zn+C~h!2UoL`8hDLr8dWAKBp2Yzrf1J(kBm7^$q69;dY+fN+|ZyLdN)^zWm1&s?B6> z@!1kL(R>aOV4LS2%%Aj*QzeNT#Q`vqsS-F0ht1Rwyc77F*f_>%3!~`Kgq8IcQ)D}2 zc{w`s2~CAeLty>jusj+E^L3R+Q4&OQs?(-p>}@T94&awyd>2>6o7;h_vll~5FWb=w z){8FzLISGePD|G%t$a7v@jIZRGL}icep>aj41E0caCLHGZ7ezV9K1=IR$R9(GzeX& zH5bt*NH;^e%G#LTH5!NTo@+El<+bc&Z}HH|RkwJI@G6^wC}4iq-+GJ;%<8*du3^?W z*GnJU#uMhd7J1tG51%?#VJLu04LD5zAB#w0My;pZO*>_(<1;46=6uFZ;M~&@%RX*z z>m1Tt-hx6Luzr~lnx_=9ovM_!F$Y6Ye zHb{FQP- zq@ShHE&-I9nZb@mInFI@i+Zz`R+zNi?7D05AG=y008| z72vA)F#_sSW*KicE;x>DMFrRDfBNnJ4-FaAkE?zf;{O89bLY$9t-0(J_}q{Ai4LE~ z10624hUcKcKBhpm$dn?4-^^C0EaVkP>FuvAeole9-CaaZ5Bl4B1Ky=V7{8J*e$IYG zQ(J6UzQY#6h`~GP99f6EfZ`&(NDRc&e(Mr`nwmn%G49uW<05G1{1M2~u1kpVw)qf! z7E>i4uL@A?f{AOc!L~Aug;3qJXkwoJ(5aI=DQulrY1+K$eyb1Sx_E; zp8-JimyHkgcRTc6Aw^>8-3B<1-tGJ}Yxnc$eJQ}UNALe4E;9QcZeR2k%oM$sG}y)# z*`6fk&Eu~$)tmG&uU~^cn#*%7?F;zr_cdTG{(`2}-&GfO(_b1@pJ20vJh-4wY^E7O zFSFpP)%=ue;e&}^c47jJpQYQSW&Ug`+1$-~u3KLF93s*F$c**_>xqfcnDcHSsnjAy z@4DlNq^g1f0Q!~?&YI>yWZT(D@H@>2ah0` z>$Z*yK`P9Ti!TV%CxxF!BS)N@nuQ;yW?36&u{K_-Ka-K`K*{{{k!~czJD`P?hRteR z(Q{OEI7MX+Cq_d{76n9au)A{xwo0c*STb64o-qv2gQ%8XCub~zZUMUTaX{Zse$o^E z$+0NVrNWePc35Pe!d>41`fA{wHl6!e`aX7`EG69rE&7%msSd9(rw+8d&eGYO$}0+( z{vvrYvOkb}qVreO(s_5rzX$w^I9%3-_S6DJOsHjn!~xHC*g||y8&`sp+4*6u8nC24 zGJ6771YA*O9cerZh&hKlrWHmL*}3DGj)`IB%)L}<#NfhM{LH~cOYKj9i&H)?7!W79!p#XOE8eAcO0eUZ^bZ|WBl663G`)g$x zfJX~39qPv|dUBR+g+t++&H>Y?s4`e0_t>7u5^11OZ_mF;Ka<%Vr+K|}-hyPr>ZeR! z#v28`d?*Ryliu&2f@HW=K-uND(!ks0A8Cmk*=2ub?guTJE1adb<{ZbOw^qlOHVYBY z`N(u;#a&G7x*V)y__FbsFxXh)nzTJP6tn>5^9H&NYD?5g$g3ZJ z6%3^@Hu1^V82MooFQc-jFP8nd2mCx!z~bj&3jxdr{p|SjlV(`6ZZdlUYzMn@>ArO5 zr2D(+&T=cFx7VG*p1X4^mHqYYC+B7M$B(~Ajx7SsMSwy7S-Nq*O?7wrZ%?|I9P-$} zkp4rKS^bAlpx0La@k#{fFQNSn`p*hEtN#M{$==l*tM#T#E4Tq@FCHOdcd4z7699hd z7pN~u74!UgiI8Eg%Z3gvtBbB^XaJc0nVOxfc_@Fo&$j{d@I0EZ@^JCF8T51U6VJQa z2mVqD#~mkssJ}Q+@e_it1=;BUp-bD1pBNc{uXv;eTlcJK?Zu+ ziQ~j2jwiw}*fY_3q#VN`sDC_u_UH+g7B%cGsNDw4&H;U?0cwT(k>ZE|9j~XO0sXcP z6Da`S)9k4(Kbka)dRb~@U6ZE9e5miJ zp#`X@p;72*hPe4%62@2aTaBmbVR3WxSj&ef+?Urm;M21#QU1sqyJZ-fF9GUY$pD4s z%Q7l>O|dpUq31NNoHVGtymqG%vGjqcrs0PX17PBfGSxXq-Y6p?aglCR?iH zl~vM*&H?=?E$i-lv+Q&oBGl%Vp`5iqHje@y!f{UU#*k@#VAP-HA5+Sk=3DhM8M&NC zcf4GyQS$qHJ21_A+iZV-NGP8#?EbxbW`D=qYF5~FVeA0^jRRnSzF3w{XZD>-YXo;5GC)eY(|r23v{8YizyxEd+xU3i zm|-fiIyqsY=h)Ulf)S}f-5Mxl%a^N6O}LanrA;q1Y8omSHCFAvvVB`a_j9gGSS ztJ1{ZfoLa_y}dB7Q0(Xj4tSkaj(I5#0&p8-v0Riaoz~x)RVM#Hhxd>?Y*?b!fd0JI%6udkL4xDy+Q#ptnAFxZPk+aLdx3Ahatf^( zJ3ggyaQ#)DiI2A*13%p=Tp0Q;r1ZmP+Rd?FSbAMIElsZj!62-39u~d~=1{(f(s}wj zvF`&lR3f&alU=*%ZJjUlNVYKlQ!7M2Z-2Ro9#lI$lrwD7OZHP`NqHIK-!wuFr#=i$z$roz;=LT`Y&%-{%}=Ih5ZO4UAWfNTv;F z>&d8O9hAMHx5ncBI=k8D?MHJHp*H_Cn#TeRdQ~T;mc^1|Q+v)wSTbs-da7=9 zsTG>cgAO0j5I@ncRfQlvZ@0PCmkSTkPd>OP8c5PeEy~Sfg3~wc$h*iWTveAXD(@V{ z9!JY4F97c+1?7XD&=&G3$${UGHZI3?_0HC++48 zY8?MBErsT%m2cbIZ%!<1036%SqcwMsb-SCmT1!UW8)Vh%acMx*Et!^2#at)bmyuH>nq9z`Fk z5<|Z}#q(p59?xD-jE#Y65?-+RQlaW%lr#PPI((3^UR(yO5WRf-5bVMaG<(MHb!MmV zd%@09&g2N+#LzL_;0HL-7lW=FqyqM0NhUsS{eAj>tf0Sx>F6uQV`$U~dVj6;Jk57+ zf(On!rq6T5Uoj8gAt@Bax5_>Wi8eV}Qpll4?~J7QX~D^9`mkO&-P(4G5h;xwS1 zwks0hdltcrK)0K0&$XG-K+6;zsG^&0mx$h>%@plVrdT&~BGmvraQ-2d?tcjX>g0@J zaIG+a<~0akf)BN;p1m`7jaOwx9{#mAtdSi0i|<$?5Wy*D>Kk}tq>(@8qaA{e%;&rk zt1m@b(KFen+81)G&P-JQM4=3R{v_HxzC|4EMZe{PD|1)|S!J!mc?Qnt$QS*f;5`d0 z1(ESZX2A%p!YYf2TFAGkv7dG}D_p`sleL9ai8|B(edsjrWN8lA-HV|~XrZGG9F<>V z?xQ$65(qKV_bYXZZ4LX^Q|Aay>DiB3dEU-pWh7;r+!cRB22izgz&`Y%ijxWUfJYZY zPJ0oeyS<+nhO+s~Swzy0J$9iV?={2K^f8*K*_zjKGGjApb-Ycn=i{vEOPo*^ZG4(t znriaB9aR`(_a?^f4I^q*U@UpQ%z&-Yq)y;#`)PW$P^JV^w^fFJ;3AO?D)f=a5+HGW2;}cpZ+Jqk+&r`~}fn4+UK%?~Fb zkIaBnBtgb5<=N&5x5|KnPL^)Q27q1-V_OImcaRjkCk{!3V zM@Rrir#;m$0cn0N0*v--m;pcOT+=*NNk*>NXldmOnLvL!J|?weTE3Kr@$=WeHrbfb z861ehkhNUT09lyNH+zcG~Msj0`sl_y@P^67{`Xd%UKgtVi6i+ON7q*vE5t2H8 z(=s~L9sl7gpBNSRQOZwH@;ZlD^KM*Tot$2nx_)7k+3+>;E15lH>{rZmnJc=Fn*GLq zJ|Slf)-qA~MK_Vg>47or@zsGF7>+eFZAQV!^OvL*+QmRaO5jiy=F+QI@g^33!+gHY z3R(QYWHjV3MUg&^wJzG`z!+p7XP$`kdbHA~Dvc`n&4Hbbrx5iv48|FLeUX zS_r}Tlm)@^Fb_I!MvY^hTAz6)lVT=HIiJhY!qlf@rG!kpXzpC-y8_HT&LJ zE@Mk1mBoI9cvMahUzP!L%5E@bzndk~uwFkh`&+88%f;?^#yY-fbYUX$xPmjUu!XFG zbi7<6#$uGaiyADV6Ff#93HJ_5Gjds)k^f>WBYXNMO{k88X#o3R<_T$fI{l~~ zF)2Q?C(F|O`E4T zX6ipsLhJia$}{ot{4*F}0;RV0jWtfs?^VB7d15*`10FqU9z5DIroG|I?@T_{tbZR; zCnG<)IL(^ReUZtUYk4Eq980@mBeCXQux5=|b2%Sj&FwLyKmW?Z_~P%KG0n{W(g6i$ z5lK`}Q{Emnn8j;L|ExfL?6dy~f1XckDgIns7N*}0@aN0Yxs!gM;?HX=X?o_*0}iG9 z^S02A@~14t?)h_<^*!)soCe^Bb;pPM^j}`+ktPgsa&t3G< zZou&=C4IC82Hhcjv<6RjivLQww4a*4P9Jrdyi>0WPTqqz*vb0~MdEoImHoJWF|1b( z_khEN~D+S-6`4P zbVaeJE3kdm9~zYu~dYw3r99eo-g9pnI9~K zgqRk!w2(LJU_fujjB5T5W1Y-?>&y%@>avGDGitW-X_{N>Jy)kv%)V^l%Z{y{$3kWy z&nBLW>Q8D24aQ)Y zZJ#j@8s6nd(?KkE+BiXyqueVMO;hn~5uC>f6P+m0acX!!bd7Zq?E0@$%>E=#X*^#}h0Fmj9OXb!TwPoUbDT@Vd;`AEOyl z^Yst(rR#i!FE8rNgw47^L@NDatBAD1^t0r6G7))F5sZ`VU;b>q2|yXMnH8RA`St5@ z8sGO;Pt*8tz?;@}c9i-Nujh}_!cR0NiU`?LxU=6~CPccO#wq(}Sb99Z-Tb}z)A0OV zxl2IbY;XQvPQ}#xUG}5Q_MN_AwPh!7{bk#kxEnsU6L-kSjEVct2mJL;pD%{reSO2Y8c{z8&4aViCHm$6pwEX2i@9P%F?rpXe+$NOl` zep$RP$bDIbvbea%^?)$u_i3_=`*mGfKBVuza7;jNSjJ3mXCvmvEKKY%yPB<0{6}W7 zv{=UFGOM}Jh+U7Nj~>O~C39~O2`}g~Gn&;#C~90^i;=NwHy+^JF1nYg@Zh$(2~`)Y z-MBkqlFgdhf~rGn^Xtx*AAUH_Cf$BCs?A)GtGP&)pt?fqM0;BhlnP*hvAp3tYZB9V zrK*m8XYw9+&!WlkctU>cXGC|ol;=%F!V|yWIiLUO4%49jFx7vXA|;=0|Kdz51mt|m zYZ+Y=e|5{M5y=b4;P9+-J<%^xfj9oEuXU2$|B(iGdZBszL;ItsbHGSwaawZtVfe;| znO3gCwcdA!eZs>Pq`9GMflpt9iP#MQ%ca1Q|Bg35vJuPfbOg(oM5 z4`V0j>m%iEdy(&h^@g9QEZlOdbco2pBkNU%MVlL@E^+I+q3!45>D=tL&uJb(WWu zMHAWChq|Ebi)^_QqtSQ)Z23EG@3b={BPcs``o5H*vGG|8jtJ3fyYu@yB7l?jnUmYu z%PIaEK4TX$FTspsD^whl*HT`CCDRtmS`po4 zxlYIqA}L9^^@YYOT2l-;_yfy_g{EYq{Q*O^mRQ$vRs6E{>a6$RufiPDpRbNBKLDc} z-|L<&i*n5S?*qoMC4ar){t{aj!Il>RIn9bVJW-iXs4%ls?_qT^;Eel z3pySJoXmx^Jc3^b0TjI$%D?3Ap$vm(mw@m~SZzW2iD&bFngwk>bRs$0w`sli9e7Z1?Eynv9u6wwoxn0?lB#=A%LMrKichX{?c|pKdkwl z)ekT7FcUONDYVbQ6!-K)iwb>f{lEnRg;V#i$0A1oi+dh87DQw!0XStp@IIgpeE#4`}!`pH5%#rkpx_)Su@+scrR~Nt#Iqz+TG+k6c|6>p@<+y>wKUA!_3n&nZ2h+aF_3} zPQBY+zQc=btl*WrOgF{o=aIF3*$M1GNxM_9w6XDRq z>aKw@lGo!h;HUh_v82rq$VTv42h#|-14aA$pe<9hh;Ah!*Av`n{$iTChF z&M7ZV;9N~(9g5Wy_D;jHfgudI*>)Pcmvsq3(lJG@Jb+f@IqWgNrZexrxj8m3oN)+h~{dW4k4WsJ0<13wnQ^J$nBG4|*Cuj?0) zH^k}KunT1cbVq1yoFZGoyjNC0@?};LGFMC!E=kK(>=F>h$Q+eZu{|0uCtPmKl4$&# zLjG>Wpls$HetDP2?dG*=i3AYS=h1?$@j@sQJ^1i?5IwG5qkd8`$l2Iwa@n=Z1SM)z zDgMB3`a-iG5Tr2Yx3IM5d2LOx6!4hrum_GE6`n<=gZP&Rs z!Uo?}*dX6=>D0k%P>(20YGw z{2TAS2R4bz=&L<&mb}uj`tACfa1{9!zvY(*odJ})Def}+k@L=$5X}~8AtGJ>w%Nmh z@?y-%>^Gm#NSW^DYi55rmt@(5hZhI|I@O=z9ytole_s_jY#^mg(4$3-A4ds6V#!q0 zHxV^OaF$OWMq`tC&x*I6()#^@*jR|7Py(AFiOt!2RRLpmw4TY*_IE8!=*uQ^^%agF z*ISs`Lk2pLImOn{S&{iL8ccU5F_&iL)qYyPQoW6*()!`r_R{)I$nc^6FdN^b*+723TahZ;$?w-jal4!d>Fa*owGaP6V?V#&W(Liy zyUMDVFVG2Iez_Heb}V(G{o>UkOZI_ zQAMXw^na4yPxrVWugVVy)6&CLB~)VbZu3v;U~W1L=Ga3PpO_oW}HIvgCn{ zohUY6LBC6d>>6{cKDz01YMtYj3usx|p~o1})Or;B7C^u*`XNm3IdG(z^b1SxUqNJ# z-e>QhqW9Axvv$I89g^7x67*h`8PfO)lY@}P->sv|sbq@3|Cxx~X}@H)U2hnh7u0Z-&nj|cMHSwcNL@J_aA-R zC6;w>!1(85y`}N-4y6&mXZ;tbA6)N{uUEv{`5V!JM=UqsVb<8RkLL;3un0N8@llv5eo`om`9db$NMjfcTiR(6g_&;?t=L z-E4))ijE_!?;(1je+@1f-hcKLSK4HF%aD=LrTyJ!1oFpB4zz5O>HDG`ok?qeb|=uJ z%`;X0zP3@6O~riF{%0>xL%O@7*;DjXAgnr&-uF!xiNfn0iG=rlpC6&ktocR^^R^VeN(|6HT|b)%Yegy7eLg?c=ir^r29 z&x8oA6C|#nG?o0*~Wm=}LJB;?a>YD}di$7m1zuWm|6`sG#6VP;ti;HC# z6E*yS8DSB^l(PMZl)-Y|#0t&PjA+j9>^k;T=yCh<)>FT;Tg&d z_YNILlwp#3X4W|>I-H_*;qUeW3-(#PY+Qe1E-xJ zF##4z^K_n#p4G~c`#-^t_C>j=7Dbk1o#vM!Ho|$;7_kDnZou(-(GM*V6QzB2SC?|L z^+3cQ_Aj*sv`#Zlh$c#3Pw2}UcD5CE{o|E-x$j#5KofXJwFUf0TUy#vPQflN%G7xZ z?3=|@4#@ig3}^qG6Q}{lXR2c zsRh)fQodz=rv%lk{8%?2)F02kY4bas0%kju-|3~kjvWH|oqqKzxaWg^TW+~E^%=>K z&hNBxXTO$QH-jLR^92PJT*o^MS!jJ%62=#Kmzm$GFC_q2D1cq_JKZ3F0eY|7Gt__1 zF?XNesU$9@dEXS!C(Ew$sYv5x=%;_%o=BcI(5Sb^A+5qx*~RarpQ)ulcxC2y`s%sV z{14;fpLgKAKh|@1`JE34-r-nI_5qx%^Jmpyi8XD`KF)H|BRLwtW#Lv>uq* zKSW=@Kc1weOHNxU&yS^EIKR_*FVd?YUfPYq_&ePOwIymLHC`d)RhbN@YJjs9%@< z`1?)W<#)Pdr*8Dy{>*#y+nVQt`fc5LBJ>(FQ6HUt+ppICG)K}r6K;PH>`A{3v>1vX zCiP3xyGHXz27@W#m%Sc|3pRFg@OhD+ zqZbc*h-OZ{{dH;%!ll6eJS(4UyM?ycoMtNVLB{cn zq>0eG#W<7kI?io&uXL8i8eJr)MVLia_f=Ia0e46z6!kI+uo?RU3-ZGB>ek<p#?Q8b4)cTz-Ul`G3p)by^{KiPdvd^!a^IxP7j@uqiS{Hg!y7 zC5X`8LFVN!f?!d;dcs46L|7GSrEns0#upIq3_G|sU4kRvNWO`H>_A#v<8{T*Qgn18 zC~D~_2p%09cCmEqBI^5DvBWwYyIG8*K%rpdDC3&>@Y(ybLQ4sDz%(i$m`#`*G0UZ;Jq&9^&i~pVZ5&MUYGIu zkKXTce&6hhL@6@OdtJlo|E!UGyG1XWZj#@ZHb+y$ZdAGZQi21u+78s;w=z(FU15i^ zi8^keMrRJxBDKRfVev46O#&%cf}sTvf5Lc2>?$yB_cLgnT>$uy{jqqr5WTt?ud4Vz zjBV=Sk9pwS-m1S6538lnAkO23+5A+OL2SW54o-rUJPggnr>TfM9h8BO^HnLQ}=_@PX(Sb=OzugGR2Y z;syQGfHqaUNErI&iu@!kr-hZwVAVpoa8MALcUCnrD=!Rn@1ytUgf=IjK56eHy^qV)0}HNbqwZKP`W* zm_1K;@h=viJztL%vzvM7U-?tB7xKvB)gt@C7E)KFVzoEXZJrPA+S`@?+rL3|m>*fY zr01*b4L|-P?Mn%t7hIK-F7NCM%bOmAYumX0~L5b_p8q_Z|r%f zUiD>W+ahZ*o%VyY&9lB0v_mHtW_Wbbx;eOVfh6_opD!nwTlzd-Eq%5AG;7C(qr~zY3XWgKb!p$(>#6e< z7j5T!#kG%FZb~04KX#5{mvykb)vTPZs8@Eng9j^O)ad?TMgDzuw8srikM`E3B7X3| z`FE(UgB4BU116JB6?J#8BF(=uv(xnT=HJBaohKR@EdMR}y#?$t`8_KDFKy3z{Jz_k zAiwW^ucg5Ghovd788IB@_qn1#w>ExPeosUWBC^!S)4M>5#@!bXp+-9f+mhl{hxb@qSfpx*${`Tymh-}JjJLq4bY zKQFd&{KJ`3aw=~$CI1VS{*>(Dpr7KCKgmjuPYsJa)|}HA4Hxe#73IhKHtB6Q@xCKz zC*VI@5P%opH@gf=+R)bOfToYcHYqiW4_KfRlSk2;X<&v3X!ZYH-GWU-(VAuDb^h)>N;p_QFx{F^F zhPv-~KF@IcVl!{dF#wfxJzw`7t1LMDemUKlb&geVf70GmB6s38rERgXi}@`gb@p$! zW?66XhwMXxuJ?OXk%;H@VGd%NW&gyh@o>7vLRX_nHTtJ&9Lzl1PV8di z{m>z353K9V%9yWO!6SSKWAu|#kn=7-mblFg#A9kVy^b-ZV5C9KL5bHql#kF7ZE)d|bmcb(!&K&d)+u7@v0^y0X0N71@LxgtK5ZC&#dDCAt zY<$BKFTP4-N#A zt2AL~gOhv2Il`9J&9SU!-HJ#%VpZ`^T{Ht3ASW*pZT_?CGLA}(S3?um`xRdDy5c-Uf9nR{G9@Ra9?@nnS&L(uqF_@ zFa!wHjoG?e%;zWT&&aP12*obk$uz{?zSCH(j{{6$oHi5U#Tp(L06EuwC6qy73~iPW zE6f!Mu<5n}%HG<6oMyH(ONlD;Xvcw9#N-TDuggqqZSz`QUI(;46YWoKM6atRaM zx=y^m_kr`f`VZ$)(YIIDeUZ_BFaO@?9iP;5dUrFa`~1_N)b~9M<6UvaH%{ucwuUBk zQX;*K8g5coigQaW08Q$XxS=F-Qt!I8`$>KJeU|$kc?bxbPVatFPoUlOq&`kHzIjp~ zX_5W*llol3!^~aGp>H>-+YvRIiI4C^RHi2NI}ZZxqLaR1QlCt%)TCZS6@jXymOrUa zy!RU>b&W(_vb5gT-C_n)mvOp(ztE&!xma&=R}${XWDZX1-)>1w>IdytZ&H6|39-W5 z!c$YXL(gs}^-7iOVN(Bwc2o9uKR6*gpHb%pJ?1xESgfhVDt32;BrT>D&D)Ln(d;@t z5H6rUy+F|5IvO|2{$*NkETC(Cd%k}~vr`@o7lIS^uS^P-#|Ug-hNdsI@QqKog`$bd z0(51w`&r0Otsx-$UOfEm2|vu|VbMVLZNC8gpnb=B`d)#;YiPkFBFA5jKa&H>kNChy_w&b(Q}>9q9E!GEQK zqJWirwR6BEzH>vI>&k?Qi+9|rGl``JT z^ZCv_mo=U{pmKB~GL2AGGa6he*+xlcHQ{I$Lu>1!!TwyN2R662TD^kRDrUI9TE!~& zv-~~VSD>8bG%V9{$`NH9elPC)C8?a1tB`X@EE4?H&Q#{5TYeYPBAVLd2|2g?&IIT@ zfAf}bx8)Q3?-l-c58lcQ`|^|jr1{nHhiC70$;T!Fr1e~N{JwTxm`cXpDxFy3fd*cH zaf>!xIO}5nCL`Nw_j-RGZucj=6v+od+CMU`3qH=?odCZIke!<@A6s8;J}vB3e-$j; z$`?#vhykrqfyk!n7E8igwC?a0j7Qxg!VwdcN*Y+n8|ZG1)06z>3b;8VTfFdZ_#7+|hJQIIIQ(g zJO^6qKY;exDZcLG(0Ah#sVLz~Jv_PX8-w-))zFpIGJWF}%|J?9vnZ@`&!YXIUkkZ0 zW*!2A!zN1*4f3{ytlD3YgA}`xo07A(c~)&XQBLMh$QP#oTRp3mllm*IeAx^fXVHSj zbbS9?%nN_hY*Vamvw4``Rslj!S+#Hf9dP5zR3H_jE34GIV!G9wN`+M3?|)KSy6-|N zc=t)~XDa_J<>$rYT8oy$D#6>N&j19p`#{p?hRuFV80EiLTjA5?l?VlSC{!ka1O zhry0To6J4i*0VQCk7CE6)qHJxzry^PrzGZQdMdivnzF1VQW3eYswC;qyWz!-Tht)? zUktymf9!lt*{|tic!61*7*Fi&pVor5BAX7cPTbSLZ?i-VB_mvp07h=(J8ZaioJ)yV za?FHSVs;ZX*hwM(WWL?MVAWYc2vhd=>APaUzN@0~*@j|HfR^%00@Q0wi#x*UT)x}1 zp6r;2RncWVT>f#mf8E;0YAW4H?BkDlVg3k(eEYaTC}1DcL2Dm-elU3^iQbZ%n+2H+QFMY??yy-FN_`QgU|MP=1{sDQxh&vAU!oGUG zKddj!rtS}W_KsfO{b3*fsn<8(ANGc%qb|an(+buge;yAz|1zY_2Q*@4+-SA=N+Rfd zZGI80ID=?6YRVwmMoG^g3d6wcmOY#m?yuy09fd{@Su{L*Drtc41u@QyZ^Zj8X zX)x&jrF2;S+ELu0`@{bIhEI;wLL%AI{b6s>Yg6}IOO0iFq^U9bPM;cksxMGOqu@~^ zV>i<0w@=;=;VXKm@iaZ`eC~38*x#uJf`6o_J(73;KYUFQj2Af)1Va9mnc?oz( zZKw0u-1r;Ywe^Iy`2#&2#&QGgcWpqAT?@6>uS`F!^1ED*v z-b>?^@OnNP=;n_%*q(ntP@LcM#@jP{zK^Ze{Y_$BB4#EqR_b-61qfa*!|nV%K@*@p2Hu4D^zN^s;L%@4l=b*|C|EqjxqxhXOX%{m^po zA(nVve(R9d=_sI@MK?5F<4h*Lvj1m(FdsnBN)0o1wk-2KNfbWre-CV2f36MH9U-iz&keTlV)Kmcy0_y|*z&@K`?W*>#6K?N&Jq!)x+Rpq@G} zh?m670YnU&HZdNwM+`0lbZD_rzkud(WG5pJt^&^&j~Bt@fqzZ(d(!^d3go+Wu}X#m z{kC^`w^ReoKX1WN74I}@i?_8*Pz|~_$@XwsScNqT2dWfFQZ-g(a#*5d4mz8YYSfC5OX&;rEW8dC8u(+ zL8N|HaL&I?cyZ-W1y*_m(M-C`0SY#-KvY9~z{On1qxqEh2;J*o?~JOB*YAr=xJ4XO z6~C^;a#xD#o@c+5AmK~Jlp-`pxfaIG2F8Fj+WsCCF*`YMM;#fEWUx}{AAt2E^LU5>GD z6)R()TK-O!?m_!1ey&5oTyCLnFhAvKvgcZFy$gT?dcTJYV0U3> zk&*lC3Qo|=8$mgv)Ih%{G*TS)xBitchsH4Wh~A& znHD#-x9k#HaE${a46pKbA!)shZFa%MJ?QU1Ik$yyC|@C(+d`OaDYwG>fT!SIrDwus zxlJ#<{9S~xDlCU%w|(i@pVqB?v4F-x^42^5*bz(Y>~1CRZC558>`jyqC0AUPx=%@t zEO(#M(P}Ii(SZ5)DILs5w!rFeCKc+Zi!b+8Zb-RzECm@~zxT_;$CLjFyG4fz5Fa2> z#Rultn?-@hzu$&n_NF|@!bN!+L!4b|mszz`sC2)Mz`j~Q-BACx*WSOF?6fzgoA$uW zIrh3NjKcdhC7JD6dYjV|mSyjNM|_q&hQ^!;;oFMO)7_q|qXy{Fi~g)ym+nsu3x{G3 zI2A$tetdS`Ebm}t3}EVipuDxG1NRpZ9erxC_4g!m|H9D+EC+YIV%!*uG5ndmt(fKLtGURSQ$;!jRWC1_yIsZQ;*DmEJQ-$_ zrG4lQ=$H$KGWl)(z+|Lu=k%263m$ID3=|S9C~i};&fnY>qSjXn-U{Q~nCpHu5Z&$aeVzqudt zL}BDhVWdp>UdT4M`^1%cDFRDd!d81wI5geQrA_sB@tdLkYW<`tJ_{x0T8M7_BvZ}1 zfB6ck0rpV9+V#`p{O~7faQ*bz?=t3RdAPmQd1H82XJPNP=3rv!R^Wk(`pBAgEe|xm z)%EdeT(jd_Va_%J%-f?$a`?Ra(l%@rmN+lGAuYba9C4G-=`@G%6od5tK+Njze08(a zuzv$hSosHpp!~PvZzqSdHBdFe&9vX>Ah+?PX|s4^u!XSqC>Wnwo&n$UA9*9qc#eL~ z8_(f75qo8ki4>cnO0R5CJN6}?mHVYgn#fe@5Y66lRs0G(z(OX*GK zFg49?f?3FIGHFtWtK-AazhJyl$?G9{i~odBn*Y=pB-hMmMV3AAZ1ju9`}8x9h$b2L z4+XqKSAmYTXI8xyg72N*x4K}ddck;#p5{_ZW6pb1QKVSc5$s0K<2fk+f4lls)Mmbw z2g(QKHyy7G>era8*hNP_!IsR)URhB=qUcKK05vSTXepr@n3$U=XUk$C#%!=;2%A8 z0?8|C378v=t;2XsiE@8c8H_T>@^mI>?!{WQ@f^mC3hq$73c#jLfjs2v ztY8|sqpnxgWn5ZESb|F<$I1@DIId93I&8FsUK+UuG4m+frc$D@%nziItDg^|TZU*B zq|?aZ8^9QQji#GB+l3zKU{=$f24wv_+O=8aCcTo?tMSXM$%?BQ3K%u>CXgPsIphYK z*6Y$sBb!1lujO?`Rh4LN&xk^;8c|QxmIFN2Lk79zfMRV8CUaLkF2S`1vtS;X;})7G zOMw;U2w|2S`q$q{JdBy|87F6eiRAtSeN9Y<2%V-z&EQ1|oi6q>$2F z0+qcxvwE<)?uG@jbdG8+*P-hESps9 zLf`njtOu;)$IXxEOT(8tO}@~yO}C13@2@E0?ZGc%;ySZ(4?7r7m?#*iiD;q#(BlQV z#(|#XKpz8Wu`i(Ch%*K7F6`;*MK?suTj}c?kSwu0>kMn=@NX?{{7QLYkh)*Gkrprxqbw3z4ma^Kep?~i|x4B7(L677!_LqOBw=qaw&m!iC)>h`>T(R`iadn}g{OK}Kd zzM4Ud%EGMr^RN|b;omXsj(?}v`jusFAz>Xzc6YXt!6i$IH7X$QJ&~h8W&?Ny~s2EF} zRR|N&LMHebaB)}r2gc}PZ-$~Zqlv4^((}XIh+x&cIFL&ZMuVk{;?yzyfCcn(%H_43 z2%SzrM_e_mDa)M8t2CE|Z5n_6EPzjf_@wTSGwJy8SmJ!dRPX?m=|s*+;C{_h*bUK@ zQ($*;8oRJ5*zu|)V_wTiQ2R6thiinOq-7exa0P$=D~uoHo-xeK^y)DK>{+BV8LY(_ zv^ST*GlBlW!vEFvsBm;XoXz!gm4%5&*&_^fp@72hZm7q3LtPbL*r1<@+!ZUuO8ya_ z`W}z?{LWnu*4^spB_}b1_zeo<=jYex=KNZ5nkgXmFmpA)e1Z7_C~n-9n|8_=gYWZ) zpE)JGg)ypY`wQq*fIg}9Spl>y6ZnH&@X`T{-I&6LFMChri@Tuo(I!STbqgdHTP2m# zFBy4@kU3v;PNs}(o^<%qwY<@Jmuzs+*t;WW1znc=UVLI!0KXcQ2d`m0jd$q&4eSkq zqmo0e`L(q^&3y-fofi~Ou%1~tgTF&J+_1RnY!r6H{3v5p*prWUO4a6PR(p?v47Re) z-YlV$%Fg=*J2oyYZ@W>iQ%QI~oa^kTTPR-sm`$rU&|E{yE(tHk0Xxr7#@Vl8Ggs;> zQtcsIWsCWl{WEgjXPAeDjI+x!Jm6Xt%6*UURyb6Vt5|e49R0Ot84Kr2&a=U|o73LjVGjxwmc)d0go5AM~+1Iid1_T()m;bnyF!#%I~;vYT9{%M(K18EP-x>ZtQZ4ekz8f|j*$5f*Z^y$ zoZZ*KfB4P$b=s+v*0+PY?+<>s`9P&@VG7^ZA#bL6$#oX0y<}u}b?Mc?j;ll2*hV?L z7CF2^D-60fjJkWEn^F=gEF_9U_|5!Rcl0h~z20mQv-o+~n(OMV0C@A$v;e4|1+FW4 z%W%T}Uyb`_wY-tnG}xKKPd^RMJ+l#KJJ9Qb>*)162X@oz^MSxuo>Z?ffzD6M zk&a`iEdSW`&t&%3S(F9XAlT~}`Fg*6n3PXVx@`E(1! zVFXuO2<(&Y(0pp3QhGkEYD?26&>u!lc+n+c>eJ1ePixg4_FtSX#Rql6S=kORqjI6; zWGY$J4X{=Z^Jy&vOXFA4Eqa~ZThpic|+<=@X(VD_riwvF#4qfNd52jmQ3e2Z5 zG`l0cUfo2me^b~^uk(PwXl$p~H)ApTz0R0V?}Ml2Q~8R}cwm1`K|f`m{FpQ4@1__= zSAjFS4zmPiPvEg$pJpF|h~iu3H6K@9Epo!ZDogy|Q(^ell=d^Xl5Y=d#lID`Dt>XH zsiZ-fHQzGd-ab^b`fXCUy_CJAwS1vjeU+fUTTcM?dmR_j0XQumx!2ApZkYq2582-l zT6cfN2ng{{1m4l0zCMWsG93^pPo4|@u=``Uf2;-4X{Oq;xGgTjBhKno`|*De@O_an zzUu;+W6ck{XK!+-VqF*C#g>>zS$P}wqj>qF*8JFCzKgGaAqzyl3nB)b1@d8R=D$?{ zM_<0G2o4Yq69jw%dbPU0UPTrVw-m5Q8fWNj?xBl4izGg}fYgswPo%7oz4-$6&KkM< z8cO5B7{yaC7w|O4PqfTGj{rEI`40kWcp?56C84p_v_)M^Nb%n?n)L03?bt8J0>_T; z^`Y|4ez}K$_HON$ukQCHZBs8x1?EF|+vOcF4%sgy0r&y=)U*9El9>&C_nyrFe=yLO zxASP|f8Tx?YUw$rS;#9cWryT#K9$n)Y~1oReFObL^2`S+@=Ta!$lHZ#FBv&?7G2t# zE@ejAm>cQy_BHu-?3X$!r}10%cz5{qV81+jiDkKc;bouY{>gOgM&3R)Rh+7gRo{O3 z5V^D?y&m02uMga(n_k}rgzfj5nMkXt`1YXv@(U`9-&ZZm?CDhI;nPf?dTUYs}%$!?R!B%CkSsXCl$|?Uy$w;_R1_0De8#FD)E6*uMRewBX9D z{BO)w9JqIY2X>P&{==Dq#-)F#Th^}zpz{qiQTzqS3+N~JWv_UpbsJEF;V zSC^hH=!UZ@9A4Ye(le;!fBAdtNn6$z2&9A ze7fc5J7&KWG|=l8zS~W&PXogC?U(J$r$eZ$`7{$dHr!utKH)eV4Tr6Tar~|7WcHW$ z!Md5dV852ENJcKdM)S#!G8viUCeK?|kk}}bxx4Ar26G1_>Twq=bN_1HqiOuKA6AD) zYXY9FT0C6riA|}2*Sp&PwBVor4Aghy>B|dtY*=%$$AvS2_#gEw75_60sK1^8;m_Tx z8^XU#pKzi;`v#~((I2bm4=9>4Y_=Z)G?;3>oXhkKb<6{LdcLfCB;EfI{?*AD!x$f7 zfcnwq6TvMPfp~W1y%KtbHWUbYBj5-HdVexaCWk&Woo*^Th%9dJo4@TWJUY$MQ|N{} z>e%re`_pXGEB5KsL86(wAdie?+j|ts-2d(Y-=b<9lY~S_Rf209&svA`j0v=JjMV>! zds+%&FBh404=4(}vbb6+ssLqt5eIpzjpq&;FSKZSR<~0Px35Ow^fw1n%A$io$nlQ-ox5CG1c*px-+~| z`L^YcONHOIDwHHA%J%NTTPOD^X&tkiT!y>P7#NKZd3w#2hnl6w>%i-(RE4sQ2b-TA z=e?th{`HCudS=XW(?6qVLv$Bj+xs;k)|*%L?lq?4*L^MVGw8n&#at-hevpQ&Yj z)!*^6y+(FKeCw9>^2QZ91sF?=fudX&JMb=w{ReRc^|6VInH!~I0(Ky5211gv0_^tH zIRelfqYLQ>n~fsh*_&rta54WAS_fKmPJA08^#IC2*V&(oTSD}J-gm3h z2Zq{v(QD76_mGaB=-r2EVS0}Y!%z7KV2;53&HF3jG&y8X9%f-(u&Y1EF0kBlLGI?} zZ%gkk_c1@byTq9i5uwsHf{_OIzoX9AI6@NK}9*j~g zbXGJ`!_DOny6S!B*iI-t95Rn^o@UJaTEE={23v={6y%NxO!i`(UQz& z(;=Cx+vP4FTYmnSjuR;3jXzbx^52tx%0@(o7IPTh%*qXEfzP+Ba#~;|D^+_3dt+hAmyMpk_bYlHzw2( z+B2alURR3_8I2ID0hO_vLpr33A#^POyX-Ho`bQ7_3-RA=w_5)DEe}&9`uQR*cW+D{ zkN>8q(6^fJR^KNh)9a;wSsgm`(*6(2pDF&yHv@OGjI$bZWh?uOV{788#Whz+;bN?n zDI;&=zxrB+I2wuhzgT-4xU8%D|NlZk(Il{>thBJSaA}E(>5>H^dQp&=TGk{bKp{a; zz_evy=#nALwpzC3re)2x`leep+g3rE+Ooo}8@t!i`Vh6Wl{a~F{hzP%`FyVHb6rAf zzsLVl&ij4NdB4xi``o?H?S}yvm4*`Dl@Yj>;TGE`QcuinFWQXcMj z|5g>5|Me+hCEd<=|98nKn#e;k`XqP-!67b?leBeCr_J3do)QnP!Z)G4{wO5BpW z@kuV7evg*;3LGc(Pbn}*%2y3&pc2+Y31f>s{^_ZvE2!H%q~B(@#Cck-ts$-WH_+9P zsE9&m?ZfW3>Q~kxV#>VI(Ftb|`lMfa%RWpW%pfdRUdaER{|irF`})#!&df1>PX<_) z1QYB(uV>NU=|4w^=znUTDt}M>d7e7D=XfBX`f=ciQ2M<7&5r-h4*b_R{u?^*U+nnb z(}911<3G0p{|v`}Vh8^H9RHLK{G%NIo*nq_;ak%t|BrW&f5(4k2mbebW%F<7z<;je ze@_Sg6CMA#9r&j>{u4X!?iOFv*^cvpi&4;PbwJ{Q7dItMxv8);eki1P!UbbAs&RBrtx-k6B=_ zw(H$K_FMiLTC-dag}v=WCj-X$PsK=fS}%nqq~A~;6aNq@56Q>OCnL}Iv0NIQ)Nd?8 zuVF*7qmQjusW>ihiz95%_$jQB6NUJ zYM;znBoW#7tH=aL`5NYzU_Z(X!H&=~6#N`H1=mmZ{63U_yFIGLCGqrt!sS?jz5jM? zrOpreN4-@OpEIhprn|rXHS72cjyIi6bXwYbfg;li;Fs1XI3L^`RXtA9;4)S%;efM8V-a=57p+Vwi@DCCtU z(|Q-D#U^bjg!ExZzvCnGdnrb@y9gU`dzl<~`=bI<=*mO=z1b))l4`r9^y%`cER2NuFS4@-Ng^bvGuKW<`p__qF|bW(2lzYG@P4WQvgn0^!G za>}>u6yaU!yUf!@P7%h5boY_(EW&=C)P@z|L_+h-_tvZq$y4<&INxJ4E{|PzRWL?T zJLZ^Ekk3iyC7z^7Ga0<2K<$q1#hmxt^8+RNL+gY*?em@|aMA#~nVwZ+o%1a3NynDL z#=EG<^x5x4oS$uKP8Fx?T=l6tG1=;qJE%V7L_~9rP@kOg3a$@KVG$~i!)L!qHepzI zP7&l%e%g^<$ol2$$V@|ODmWcU%0F}J4_L3s&FmQl5_5hR<=Y(sGjC#MTs|ghDdY9Ti`&Xo2&(Sik2h)ucwg7t=3K0O=qIL z0+x@h-v7roc*B5tLL>nDwW3Xcw(g;PQcTUiv5V>Qtd^QYRzCS~0VQkB96Ghk8l|`! zW48T`7&jRKai=i5TN735_fJuRjd73T<$vZv+pp!hQ$Tpx-RHa6ck}d{JKfyZ`qMQK zuyLU;pfSI3>z`X+SW(n2OW%7rv&(82nO;FL+3%lGY8*1TQ$Cda3tzh(X?i+LP1c^P zDCDr)E_Pkjizge;QNq)%)=A)c7*$LSGY(VUMrSgYB6yP4ygs&@TCCz~P=Ms2?@56X2162gFi&V<3qB@uL@py~tm{l;HJMdo?L;9#M_VH1$#;?L zLubn+U`5mj5fuDue!6Ks;dv7`GjDj$RqM=*qTssV92=bPUe70Y@_WciKs*VnAi z=56N2wALGlx)1eTnmB(drA^l5QV2q&zx}?i0D7plfZFjN#OR;W@HRc z3$KQ0DEZWyKFJrnX1*0-jh9=Qy}2*_Uw^eTO|`XW7-OA_=8Oy!#V-ucA?p|LAdogr z(><3&m9_6leKAq4aW7Irj?%misFTTmx}WB4-;;XM_&P8A_ar^)eEz0}8D0MaVpW}HlCwT0B75g3aHPpe8jT@ z4VfcxTYy`z8SOEz5io(GB<$()N!yS^m zZcmtrkr_U`r+Age@b!qO4$`X+C6nggDgm57Tn0d@h3bML&mYFqcQ78ugI;QYt*Z#qA4^m+6GpH-DBK`>f(=H$c> zGJBM58EeG9RrSV=RL2EOx8LNv-EWPB+>FKJ@~oamSW|3_=}s{0=$ZoxGoABXiBAv; z&Gxr|{8m3pVy^xk*}n$IM<^r4$L@3-8Xx6DXaCR_ZqqS6ZXp9j+S-pQ4scArR+*I)Vh=P_Gv~Q)(GShF#x#rGj%X0dl}p=F(B?t z0OLOu`K0kbS)DnmD0$zW&GHWl^;zC5jE>9#i$tGV2R}1ix5Ps^kRzSrQI5Rbw8>FR zPUmEDwBDJYDEH(j-sA{Ivo>dSb#hdMb3~3J+mlCM8FdX+p^TKc@;3TPgPz%qP%MnT z@|ST0{$KT#+a?p}nI?O@^~!BrM_(DXRzf~A3pc!>MDS6Wr3u;-{>SZ+CPp!9&QwJj{`eWqyIgC~lHh#W)E8;l#iNw*)_!(^)na-o+ zSqBbxJbpG33f1U#Kz=Lpk`BjD+PgmP&G*dDOFy_ZigSGH-K%pzo=lvf8>mEutOKVKc=`(BLtYJTNh|Cojx)tcj7t2u^*Qy~6() zlL}su(#tBLPOcRP_1o(_hxc{B`Xy^Hf-vmrv)5Y#;?xK}wCke8gz}*~z06SH{TjJf2MeT0fub z;kWb0m)Fha?(HMBv)h+>17T`scU-#lXr@XkZ8)KkR7So zE+v2$?K9L|w5J_N`~z(Mx}%-q?`;~JbeIIPY;aidguMb0*mF{QSnP=}FJtSt8A@ZM z=(a5MijFTa1j5?K2V+9*BgGpYm5v#Aa18DnS?L~ukra95ec-Oh{5$7INfz@#=e_2J zxK@%x@afJNOaZ4o=Vvf^YegD#*OesHzHs(G!S0n;l!xDGUj(6XFz#GLpuzeheIvVZ zQ6&py&!~{g&}`WS$(o0ZqrSv76U@5ScAXG(&6R7qagBNG7V1^QZ87W%Ub~bw)ev)s z>tg-t3I!K)d(dGi4r+;Sn3P%hnB7o{e+e^!ypj+G@K#A9Q_IuIr6! z%vo+^fyAv#OnScLN`gtD)x}QFzk?3nm~?z;W!W&lbp(i~eJMSxJ*WILe{*pCJ<^`v z`nStX5z!TjKEL&m2>Y4{`yF9+Gaoj)KN<{?@PnbtagTu!B68e5TSGM_V+J1 z1<%!qk=b=yyJpvY!j%b5{qmfSIT?Q*nFyZ8MQh@l#^$0#An~a>(-Z2zeB?3tA!+t_ zwgwV+K0y6)`%{v3*I1Hv>w9*0;oOJo@Fqm?=0jNw_Z_SXSX+pJ!36bh2qXW_Qz=@` zjIl6;Ruw!q|AV7pcO1gI!VwE|o}_L<(E(}}`5 zhI~H+v(A3k-o-}MGxJMs14>TzrwSVeyd0$7DeBMP>6n^^cbppy8C#>fsu4zU2P3zB zcvsL5aL%spBlKg?oceOkBMs^*2r29QC;EjNXdjqR1Hbq06HW|C=S3hcighK}k0F`NaI~Bsr)4DC#`h64#oq zk)TI+QLf1431Ttd64py7MX)Q&MeM{mCw%%@2UE4Dx(#>Q4RZ(cVQzGbL(UN$_y)nJ zL|7NYNKRf~7nYNs8hORtPLVm=4C|d~`&D;H4S6A!22p}9^0lY!e;`$wwof*2m;WT? zeu=7&bD!nPvzSI{o4_lY*+IR+KV@Y^fm@A{=M%?j(9 z2#;r&8&iK~vo_eQpL0aPW_`$Ey5**v#!QssAQKfVW?z+Rg$bht>jxn#-FDV)5;xmU zoaJxKU2ncA^;b>fRi7Uvo637kcKw@eF)2-1DJ*zuYdYOtL)VBKmVe4;!wZO}^-UD< zcE)4LhflxQ;%vLn?%SRZnCRa0*Z;%12-I{8Tdne8iu|9|F(xjS{o8h&6d(78Lc!6v z`A+Yf*4m*qBWD0PsX?K^y4zk)<$OF5*z;Mte6R4cs>eYjojP8+t>#R>J`o(SJIW*e ze$D<-&DEXqH|Mvmq{}%e{>b}C=Kj;s91dUyL(N{gl|B7nsGM%GL#<)7I%N3?HK%@< z+YBP*sqtVEGi`dxqy7fc>LyN6nC@H&&tCdwdi;GH`#a!2w9~(|IsV?}^wo#{oQ|jo{pC zSk76O$n^Q^5Bs@5R3Go2KQa3?|1T+x52ZAE$xCggleq3mQ9q?9);b&Dk(1j#Ioxr@ z;uBwT#eZIW?H#ec>Ta84>D-l4SNfa%J6i+IsN`n+ldSwp_s3`bqcP*lx+AB>k9i?~ zv)&2_>SK#f(0AQ&%ejlcHDN|?9Uto>j)5q?QBAa>B!4|YFW!pkU+dq-W)ZXB%RIzU zk^NNz`TB={=VyTzQkuMpI1oRUxKFN6n?vns>A?lvsuKgR`lAlEby>WXsA^4>t-nkO zPNx%#*~xjhlz*y=bo51ri=}B=hPo)Ex9K?kNsobWJ9p5p=zb`R?v?*bKOJDBNNFIVxsv z>+dx5=aR@@=skfi)r3zOT(B@Qz3u5^m+DMv?q$_a6rn#)x~&E%TGTa{+v&bf~diNJ3E$S)-#{O_u-zlO2h3B9Xtss7i5rMH9f zcyfj*kF@}6B%y|K@ph>F{ZvH%b9tEY)YU()di5mzlNK4KKL+m;pBJL#U|zfTiOFA- zCx3Y!p+-6P{q|Ic^6&NE!^BeSwap#)H#`1oI`E&!FfRVZ9r&j>{skTQ_msctYkup~ z--h4!do;rSt1vtAWHQZ}4qN-sr>>A7I$a0)oK4RHXbrQaL)P&BM(?j5>94P3Jjg>C z^Y_*W7p5QD`dWQgel;7a61Y4NvvP%@b#GqIlQNzQ(x8Fngg$LGgCo^*B@KovenX1D7;Co<>pvx zxZw;~N#e8*IVC7jEG@DXa(i#soVCpUYn%%w8hol zk>sm>T^97C09sEw@oK+A095_k97v>wL>_(8H`k?4^bC*x zJIC`|6=yr+xddQ-?s)Cg(XJ^ku^7b6DSpg$Cd^A;s_wb?NDKpF4a?+Ju{wu*nJSXb zGhbp=5JdKfD@$QMz%)rtf;q4f`;K?VU5~aLu``r^1C`@yKH9hP>}hX~HLd z$u~^XwF<)#*6s0iTa0bdvbJ+W=_RsSf1rtzqst7(YG}}>YW>Z-qj@T2J%{X~{0(EH zh<51$S_Q>Xlic=F4)5XrL2Ft+ifA9as2iPgx%o_Q^~2ePXI@#@-zo$B{q@^< zvgL$7s^wraf#z$hm=epfp>kfC0zpK(D>`i~; zt3OCmZ7H0(<<0@x&3oWRHp1`qEYbXHG-^Q97Q#lh|1VZY%N^cJ)VXgUBC0_OMlOA(0{Rv0A39OY@U) z3UVa1w(V>v*-9O$iaP+mLAGBX{OCLbiHSx?Th_CY&v`~t)Xk29O9B46MNNDO@?}OT zo!@O6WacLtbO>kfVY;?}#Xst-=66{}-R(W1YKCOcm>+{Py_!|- z+Y@{>=QdmC*6ogB4SZ|Dx~Li++1Y)fW@9kEY`SREpzE9e3Y#xJ^B?Rpd)oCS>wLXLk&9H5q zX~pjukoXGC$C}lj`x-r=!TWLBdzI~dqrCm{ej1^vek=m|3!D8>hgAiZ%)#1_@QhM^ z@P!0_eAf2(rTq{~-ACuuecL&H>D40VSoqk6A(YDPgi6WhLy*z@?}UuHPom87!dP?H zuQ7L1AaODzt=-|GgemWw__3TWXh?1RJ!`?#kzTo@W+v2}N~_zRJ&F(VEcrb#`y2Zf z&D3R((Hd%)*V6>q= z=aMcRvM^&2i_5bZcDbxjKc0R0taZR7#wL0^I*X?L{`d`-$1fR9NvK{aRZD`YS~_3C zqzjI*&Lr%d`qWn*rT*1zO(OVptzBR`7*!j;bcl+iFrx=~HHFXU)MCV%B#$Usds7c% zPrz;#umUZuU#RdK(>jx5dgHGNnD)GprfL1|d+a6a=&+$F^3cTI@)-pk+qTzVAM=R9sB5C)aaNA@ zwv@eQU(V&+42mCXX~5FJwn9V=arc<`UaF4aI7(Zml$TUSHF6uZJ$}hgl%~40W7tWy zmVHgK_Zc1<$JnieaG4Xr+5S-(2{pZPMlI}JouTZ9@()!vs66TKrm-m5aF9nhO!}Km z`s4QT@*P@Ll4|YJoy6L1|Mqow|2C8UZLj*bX^5H*?i}msL)21raO!T2wEc)eKTVlwOzmty;@9Ngy8ApTVzk|{{YxopOx#hKE0)jX^y-$tGn?Vo_?Fc9kV-j+un+>#4{LkuhH z=_%5FklXj&K^JgK?@;@jo=hi@9lv38|LP05jAjD-rP5H-Xm@m%5J*n_;Js_qF7lJx zSQkxu3yZBo1}`#NR$tAjg5?>Se>J8q`KiQjH|)0|)5@^DxZW;(S_Smh;V?qe-fdmE zF}2VWUVRu@yWyo?@3J?_)*5e zZRs`T4V~Ae*UZYQKbBFu_q_h+WsKZXbA5K>r$<=O&Knd^3Bqw51QNVMdBCWE>pVDZ1vAwy7!q zG-&mNoW{|o=QIvKJv*?q?F?^!liN7DOLo*&+?AaF=t>kqI*SaRT6bhp_3pYO*Hph- zcjW4tcNpfQ+FG&)a;o}UCfIg8vuD8(^~*b-=uIE6W(lD-CfXo(yS4Bf6HELO_CP5- zHhlSJBIa!_3(5NNyrXtF)51a zB6e!oOm1{uDZC-(D%+`g1jW0V{-)t_|F$Nosq*zdk%qd>u{opu zQ^SGXzOiDZ)_jb+>4#ztuEJ$o%u#@Tl*n38YZ)Sm=y0tSVzSR8vtLH1ZaB>Ts<-@E zG0t7h9S+nvrh)ZSHqpN}Oh~HV-fZ9c3gcrAZfPQ{JV6 z-gb3fTR%_z_b=WP;H}+^W!LtjX4?eSLl3>+L!ve3^Hwz|x+C(3kWshoZ6znvKPo*I z1R5KxD^61%f5@7}2$``lBHH+;-|=6b-=uHjATTa^_v->1cRzF3zN_1PEZZEUVJ9z_ zN-<^S{+##?!@E}((A%`WMRAGCI+axcBboAuES(;lp9M29%E`n)J-EI2B`u2Bd8y{B zy?X-an#y$BtJd{sgS6JRvy^le5lj}UaWr{4r>7itQ=R;t@jEy_^T+@7i_zhyi`>(S z^{<(GFf1G&xArNojd9PJy5Jvawk6C9E_6=0I#ItTw|;+aeXCW*fUjD>@&ixpRL^s( z@pKSpwf%)yUqfb6eRFeb@47wI$UV{isJH#i)|qv?>Akg_aBu8(Q!&Qy%wT06t^Y^< z#m(x0{D(7ai1P3XeF^LF7v~6r9uC{qfr-pd)hjU?+zr{5rp(_07iOrbEqY;MILrnDP1(E0I~8 z7KUv1npWn0O&ZU;WY^!=yX}Y1ClQ}@DYx|Ofr$B=Qz+4z1+CtvzTkk?H$>pOPfHHR4rvU$VH>Y=nT;n%p4Ae{9SDo)L5a`=$$M2$Z0 zbhMQ&{s2p+U0_TQPCed#K_*s`z$TjR5a_B5*5FI`fHo z{5qOXM3lFgZ#541j3=6;z_pDFYu^DBBwhWC;)B>IiY;mk_tRj5jndS9DjKKaW9=a- ze#siOCywyl_}zrnH>u5#=NqyaJQ_3i(|ES~1DX59I}~2DC6vk!tuurJ&js=%m%KZJ z(o*)@-R2ZpnF!vuhq>)mE;?yzwp^+I%30Wawe=0rg*j~|$^0ZwYq*)>2JO$!0?lvT zi>ou=GA`D?a3BN5LbuW1h}>4pb(o}90R+qE`4Vi_YOypfV2|VjqURh{>p8R>&-mi@ ze`Zc+^XSO8nhobk?lo0m9U<|l?bnH~Hf;=U?1r!j(wp^;z*Kc4drk}+wV>O zA$ZXyU=FO5TuDmepN`ptqq6}PHs7TiPht(uvfk8*;<`mv4`yM&{l54In&W@_LQ-?m z&Si18Do7quF(HKUtG?>I7Ck;E0MoMVxF4c$iThQgQ=2v#H(&KBo?PgY#|UH?9)X(c z5Xkvrixfz*HG;Gofh5xfB@cd0vQGOLBdRS1B*v+byF${|XrCVlmOtXGx`pgJ?XwliQ2T_-`Gx4~((WS6K+UE&UZOTcw9sU`0*6TzrMSp7BThBR}vF?w{b!9$k!Y zp$*@2>@NJsvHweO#cNcGx4y^UhtTlViZEJEyoK4_a6ah3-Suw|9)ib~r6Lk9PQ*H7jXMJ=Nx~4Cmj=^0tTnuc#i8@h`UdU#&Lr z=Y{jH4d?$wJNy|o|J^qKuyFn&55MUTq#I^vq@+t&w9A@n2RMp_lS9T~rtL6>7ngQv zWEg7OuQ#4)wxyUh#44s)MB#-;YS^=yt~920x6|+jpp97M^RVr+zslt9ZG4P$v+DO# z_qOsBhN+>8Y^s0QRPTuYOyf~xdu*^hK6csds(TmgVdI5$JL*rQeDxkTX`5pQ(HtJc zSQCVOzMAsAvK@ZC#|{4_HvjL!`J==6&uE8#jm`h>c}4=ahVyUXGP9?Cw4nXeZ+=X* zzoy61cTIn9jtx^1*W2MdYKJo+Je=DI$E$y+zS~Da?em$kGeU%o4;+psx=?@1LBI(6 z5tN0HKkw!pw61|9Qo_&ENRUtuJ7xbuP@Wd_5zWs&Z-RVJZHIfY&Hd_JBcH#8bFYQl zBcFFjP-N^GHvio=|8K(ii^BO=!{3p7kI+=e#W*{hdEw#oQ7$6%4f1nSJL%bAhjXIR zRQoY(o%i6=i&&^k&_sU6PKb~qP=hqIh;+DXq2^s`9$@R?^*|Lt&&Q%IiD85^FS zb#naL3;>z&aj(ee!KgJ@7MuL^J+Iv(RwT`1>gY z_IUoLNIM+Qn@m8d8|?7R`1=&=2@&Bnrsk-gI{L%|T5$O8{e#piJoKeu^vb#YQ~L_e z5At&L={YTHaDGTVE&7zn1FN$!=PP--%E_B#ALY~^VZp~%zudhKGkb})^U{|yl&nOy zSo@gu<}~ECv^^VYkH~I^Dyx%~SGD|BAM--JEhFv;K=8VU;0c>x4Fvg{0|U;gjq(Ks zoMX(s#yroM{fv2mF$Wm)B4Z9T=EcSwY|KlInPSXg#!NNlWyTz3%*&0LX3Q&$nPJRK zV`dq1yfL$ld6hA9jXA-X6OB2^m{W{-oiVRB=8uh;Z_Me&EHGxFF^i2k%b2CcoNdf< zV^$b*t}&~OS!2vwjJeR5KQZPaW8PuR#m1~N=2BzcWz2eGHW;(fm_Ik>J;wZ{G4C_x z{lg}myP*~F<&$0PGkPdm~R;KEn~iI%y*6XzA-;E<{o2yY|MSe z{M4AO#%wd@7smY3mj8 zv%r{z#w<4GEMt}$bG9+djagyLxyGzAW{oj#G3G*J{=}GzjCqGK7aOzAm`ja$moe*& z*pveA}4s8uNW)erU`+#{Afr`;7UiFxk};ybCj@v2Wg%C||~;z<}OaQN9%=(j!{=oMWJ5w6OPt z-74&#!X6T~UD(IMo)dN^>r1Uq3A<9*AA~Iuwptipcks3TO4vujmJ7R_)t=Tnh0PYG zgQg{q3DW_Al2{i1TZ@EE6Ly2JrNZ)r{hzRL!uARqEi3_zqIIaS@xrtWR8lMKTw!a4 z^%ABNv8~;O>5^8fE;yEq5_XWeYe}WB&xLIe_K`44*e+o@uGRXgu&ab^5q7t*zY6NK-juW*ki(O7xtpCYGHeX-7M^cuo=S6K{ao^R@i02 za)eD5Hb&T7VIzgzElj6_N_GhAFD!{^PV3piCJ0LqHeZ-FoJ)Qw>=?7sl1;+C684!e zOISQp$kq>p{YcpB!lnrOhp^j(H3?fQ>}g@Ug*`4Tj`_Jcz*%yku$6Ml7k0O>Ukh6z z>|J5E3Ok<#jn+zGHwc?4Y_YIu!ZrxIM%XLD{K9&%z|{I9VOrd39WHFDupbDk6{cf} zB|C(jA*>JUdaXT#r3>pMtW?-xX0#=b3j4RPW5V_d%Vp8D^&Mf;gtZ8}Ti8}%FA4j* zu$Tm}KMDJRuyw*F2>Y$D>B8<6Rx9jh!d3{Y6}Cgzd|~eiD-$-dC)iEG<_ViBY?H97 zg?%h+tgsWpekkm$)4+xZyH?nR!qy7Y0mhR52s=&K_|w5+h5cOE3FfRN`-FWh?1Zq- zg!SzOwp&=1us4O(3fm#J_O`H1!cGYLKVfl+U^+xuGDg_1h1CjMA?zt(KNYrF z*lohvgv}Fn${AoK!UhYwQP{J>CJQ^0z0TGvh2;oK7dB7W2w^LQ4HC9d*!jX<7uH+Y zeqpBy>(Lu5TG&8g-!d;P$riR>Sdp+#ggq?mJz?8~{ZrWG9NTE!F6<^@&k3s)_LQ*S z3;Tnx_l2z%c0!mg9F+_@8*I6-yM)~->~&!agmvb`OY0nADZ;d1R`O$EHwgQUFh1); z=?fbt>^u(owDK|?L6bnOm2{ zvK`RM!=Ql@eMqGBBVoT2#uEjBk~f5LfhQjC6n3_-Ey5Cn4Y&ZTi?9j8ja=Wmvg#AI7B}{K%w|*e(OJT1IJH0>H zKZIQ>tVvj|u&0I17WTNXWx^g3_NcIx!kUHMEo`T-CBi-vcB`;n1HdYUWeA%oY=W?9 z!e$G*M%ZFueqj#?`;oBU3mY!%DPcbl_Oh@fVebe#L)gEC^$>PkSSMjUE(ANwqEbm8 zVgD9(v9P_uMhSaIShlbhVMW5W3cFR<--WFd_9tN*gsl^{RoHKZ?GbjbutUOrChYu+ zz-oo13Y#x%qOdYymBMZkcDJyp!X6QJwXiM1#tPdb?1#dR3L7Hq%w(_&g{277f>}wf zu+xOi78Wb)r@~IKY*eyF*w@0I7xtO3_k`^hc0$;j!uk#b+ac@pz8^KL~8QupbF~PFRVsr-a=t><_{=2wN@eEn&YBc0ky2VF`o5?i4mm*aBfQ zh0PImyRaf*4+y(K*q?>v3ELxVoUqtSz(xy86*g4Zjlzu<-%SS_Jpu4!afxCS7AMefUOsnBJ5FNxxyY4 zHbdAigv}SWOxWGRZWs2juxeqt*}~oxmLTjKVO@kJ3emM-ieVb=*;DXd!9-NKd&TLR|u`6~I-ZAk zi?yAD(50U~J=6G1DlWXLc%koV8(vd9(>JMF9?x77z@nVdbJqYL_2wK%c&T*O=x9q`g2Hs zD1Djp7FJeQI1Rv;;H1M1H_5RxNSPmr~aQisNR z(xI|Q#qCn$*cTXk?YDtAU^?(P@|_BF(>I9pJ%e9lK33t@G$lm0BrG4apqhE5)eBAi zt5O<@her9{yGfXSolSix#qIMM-v+J+ehn-D9s_0oqYFY|uXD=Sl}ArIkYM{ya_o_E z8R@vEJJ9dIJO@s7;0yfNq%`rVYkWj$=LiYCEma z?YKWgmxo+m84~5|Te0Jn^h>%H{jYYc*l(*O8o>jIYnr z9$X1cqF&n_(O~km%u|<@ub#>)hZfxYF9@rP8Ce-)?SLc8K|Yx!1^gd6B(I`uVal)} zsiMrd$d1FhOrg{NBew++ajwEGeN!k-)&I_hI%KpL-_&*@+<77LCj1pnd@4_GdsQk1 zB*i`RJ?%x1KOtyy)XS( zDs3mIM~*2&n{-CMkUS#WgWrVi?Pm<%*y2Jn{LYj26Bkh5D4VYdU%ztfP1qHm`*Y>( zhM(?uxZ&qH_K5Ul&GE#OMYwwj_bDgb80@cO|GQ(4;59>fJ8lyy9YrmRzR>59za$ye zFN%2=^2hHs*38_x+Cp7@pZJtd`)AkHX57Yl=#nXqMzvcH9gBFrDEg$o5UvY%CPn!c zV?P4zWS*XF2KKn*Xy6{lUJ9Is`&?iVa51pVf%iJ_@4z*v=EXb`f&g0Q{W#um;%cQtAb85YUx#6Xlaj zUA=dPVK)3qK?-hb;dAMFBiC|x^E`CwI}32z#zE6;;Jt&722`#)fCGVhfiC}4`1j$K z;Ne$1N@tFTZas8QFt$iG_Rr4G2HakUZVm7~;A23AUl07;!@pnY#BECi|6JUP$WH;V z3|I=R24(|q^W<~LV7niTtUsBPugPR`Rvp&0l}ABa7Axb3g}hU$}@d%I)x#A3QlkKHBoTiADr0qz2R(+AxI=(d^uw9O6py-ppmfA&~$A8yM$bhklw5BDSn zK{u6ooPLjC?}NS4v9H121N$<^J`ww|8_|Cqdq3h{kA0(HpIiP)V+b*GU(lW{vEn!=>KCqbc*L$+!UVlf|bCH zz|}yFC+j@%NdJp0mn8W0i!7gXFxx#1)^{%*OZJ9d{Z&#`~sabl%I zzuJN89JtYQ1Gs&Pw)8e|N#)VNOTgv8XMk&gu1rgiNeyM} z_wY;h*W)(YL#O_K%31WK`Se3h*_UH~9eW?gUW|PU_Ti2_5&KivM?3a?*h{dFb?k24 zNh3`P*PH$n+;qob`zmL1`xubzEfPUb!z)A-$ z1G;tZbK=>_ShttF+P}`eE+Ajv_9WrH58Mv@M&NGo0}lhA0IueYx!jYRLgDqHjK-AC z%GQK;AbsC*Pq_UFHx0LP!c~9T9{hs-M(&R|aA~4#e+9emsiOh8#{!Q7hd9s=+=pCd z09WC@0H}U%H*gVf0G9#p1Fm-LQ#k|h1ojr-E5P2*kZxcSQ2Zspa$qH}FEIJ9wtFSeEtkoZOF!yh z&X1j9amJ%W+)68up98<3u5JGlRD7rUJvteJ{E8nM{;l2Qv zi+zOy*8x*;ZvuV+9QgtD5LgR*1-Qp!F(V&4wT0`3OJ0S`O&TF#`%z8yFPSi8rj zKMZ^y`3(7peg$_wQ1%(X0oWG+_hDb**pok|Jz-A=_QiiH@Eg$s#UHzu^kGi`mIK!T z<-Qx}meX45$tc?D>r)Y$`Pur6udulCi%W*r4^kzA*uLmagJr+pA zUI~=@GGH9A#jz)!8wy|Yzo!>*UmFTv{l!w;-eTjk*nwFN%mrHK5I)eyc`n&wfo}ck zLpiM>uGOCK)L$&c?GeJuijVT0Gm|UOz%1-ar{t%6_{euIFc~QKA;1B^sg8XH(2Zv} z@ih0Ozo6XobL;CPxQ#^4F5PnI7UK3f@ws$b^DD>g0>uxE9YMUnbYLoQ0WcA`9_WU% zg>WX~cCRNKg(&)UB_X;#mvr*YB~4`>I_X%&xc%*BZkz*0&LV%n)xg2P!$3ElY4E4u zHadcT0B&{g#{qlKJQg^Pe;4+}g{~-Kl(Z_y%YACDzFgwvI9YH<5kDfK1-e$xYa%(C5+Kd0RAUkywI_U4&KH{9if zI}o?eNxy!oCkj{n&;x|~1@+4dR}t>Tge&(Z>sa7@VDHvrfoFlcfo`}@5pEQ+SmFs+ zF?>V&-PQegkgmrN#&6upBIwi)C3FkX6+zb%x8V_VF}U^S%{w>VzeCqbo9h!n_daf` zyM*X^rSO&<))s@Dca}ly5%nLp=ON@HbN@wvaFVBroy5h}#7CHaaj1 zem&B#3j6NPq4?LrpG}>Py~eO(*m`^#Zs)<@*MY~W-?GPGUw!%Uz&F^}0cBqgbj$g5 z!g~z2O%p@mXI{SDjd1L(k;sOALg-(fSa-J1HQ&M_X_^&M;{NU|J?*E z2l~>E2l9c3fr-F8PB06u1HKRae&Dmf!wyWEV!Ov)aXg^#(t%$9mjRao*8^*S+kuOK zyMe2KhkF!Iq1N1kkz=7Bkao-JpUtny;@xTD! z44~XgfX6Af)sB5T(3RtI;u(csr6-2bnm8M{b&Nj7b=zbBq9xTWECKjHRu;BnF`dkprLOv)eoE}-nYfo{4@`Q!Hb z1OhR?&gMM9D%{H9Pj#UBW!V*u;457zf98CPfR|z42Yjs%cl>L|QvT2{1C|4ufce0Y zS;$d#2gZ&gpU@{vqWpm)u?r5tE_Xk6g|{B~1u%9zui4wx?+NTZut&4UsNcpetTnPx(ciIq);3Ct3ujl=pv!yQ?1MC3 z7iWvmLu0#8K|^k1OJ@~VRh#Wo;*3mxh|aI|l;8&XDAKl?v<`97maYWzOE+c+);e|< zu5j$j97y+PetrjbhGqd&lCDTV6p?5zG0(12K-BIJXeK#ov2Q9Oa~87k2w+k0k}T9ic5| z1D{%cJRo^~4jc%KZVc7gU5xSja9io&SM7KSw=(G6x;=!kQa@Ktp?rl-i!6`9Kjqi{M(Z@MDq=eL0` z&w*j_4h^-(Qp#=%@!3CHzl$Rc|6%Txg!a(uq^7ue;yGm18WeUoF~ z?WEi+G=SIIWIpHktgnybpX9(H4or8TFDg1Zx)Xm=5c&PD@(z>hFxLB#-3ro|?4++B z>8-^+#Id^_;XTl;#ohkdZF?zhcg;Y*1#bU8##Ny2$>V`sU~ix+KgnNmDe~|u+h0Ie z3!h6j8TqYnVp!(D5(m2Vqa*+SRSxM9;dV-{8yOAjhwjC}7Z zm#ecW&c5WVd@}Q2{C2$@%ID|EV=j4r+(R!tU2c&xi+zVZ`Kt=%Cx9b=uNp1h3q@F_>-xUKfkO-7!> zp@~L6TTL2bp$Vm7x)L#LsG~sjhi)zL)V5DI(k2UWPpRbGx=}jplt;=f$#xFz$A&nA zr!x&jBww<_7o>8|*Q`Mn$Fk8+*yGag`s4J;*nN&{2V!51J;AYOU|)fKh-2>ue=YWO z$6kQHFG7AFfTS&I2!FNwt-x(Hf9v@R<;`FjMMdVq1zH(; z7PlSLpB$mCKc)1VpS>>q1#T^gq4?GkpT?!-5p){wmwD(^{yWJ}k%!KVf4IHH9?cWL zl3phQtAMM4jlfMnl5JuiO})q_ul+sz@)?XA48bw9)6|26}rdabK_~TW$7l)w^QLn@NC3w*JUA|KFkRY z96`VJ(3$ebErqnb0^9`sv%vkpCxEfs*>~gA`X4`)SyYna7%4~m&Cii1XL!wN+)338 zIaQpBGQgqnmdilmT0PG3pgqVh4!4qVC&wR4+?01P9m(M8KTx})==-D6`ODzXn>K@w zEuLRmSUjn?x|$B8%IED!HjvA)5%E8QTW?-3ASjbCwLp(1!a20Sje1eKkQ1J=Idg8r}@Z8^G;>z=ctN4}flH5@IJD^{42%XqNr+nUr zTR-Ao1Y8DvIj{+s58UP9?=g&ZRl>B!y0O}AtoR$|o{S-@ zCg@g_4ix7V%qu7_=Afa|3)oT9Pngjjex;ruPa58Wru*}2n8{WwmN0>Pte#LVDy01NSQ=uD-TYnFo z;^~LmPIT~Yz}KNaf((01IuU3E_6NGMTM0iuW&$P~o;nn)P3okIO;=ScQk(F<$i-_Wt?M=PTMjG-<`KT&G6$}9;5tvdI|$GHO{6X?@Pr$MM=EZ+ z=Ii>jY~*hQ`@!UWWxBCq*y|&GachE3gXf(f0sxNfk$KQ2JBH?oHTpr;F}iCDM}hvyr8n66HT@YDd>JmY`0V6d&Keo zRGc~~Q8;yX-Ca7bpJ=B~uFf146yDIG9o^3l%g5~E;>yelS7#0LDhxW?J-vOtA7WI= zn&3_I5KB>MmBZ3LjpJEdWG-@ZEKjyhe;w~CCw2=6QdlC_ff38VySm0RP%$*+@(fKC3!MwHSpML(;lg5^s zc}T&$h3A{RyYgwDK66Z{SfGyx05KAxJq(?XT=jEh`@O;wy(91MMX%^g8J{047+0R( zi{FuVFcbv;UGb{~2-hQmV6>#X5Z_=mQ`XH-RSef3ri`%b7WFM;SA8nP2LhM<0*cKE z2_E0I^BwPr4!rRv)32U%L&copv_+0fNdafSC(j*p^`L8fRW-Da!m@&@D&OP_j7w2* zRUs|Lee%IKSu(R9hB)64xCwP&QSnVRv&Kd+d1%~Rp6~AGIrYpX@dWRr&-Jlkc>j}f znGt5#dkwTxBam>uD(AL%k(sLc3Qu0~u<4!tgT~)}|58;vhs&^LIip>IIUd!sJ%TEC zmAE}mk}%Jxn)XbqJrZyAiFl&IWWdv&J@w3P%Odc!r!arXJ!9Uy0;d_9u>Kpp-E_jc zJWu^UDSW48+wDH0-MJBV%%3?1HC5{jPRG%H0N=&WHT!u5h3N4p^QDFD2lHM0ZndtM z*FLY2SE&Dq$baUToS~T+c_e~?uq-l!_B#K$PEDpwn;NYV$LYa!g1 zt6;8P!m>=#EsP^cx6G^HZ5Pikl0W>lkSeY}7gy^69Q{h?J9qW$>)*yLf`5ejI)mH1 zeO0JN8g`54O%hhXZF3Z>0^^e5TIN$GGZ)%>St4a(5VRK;7L|~Kyn<3`ShD5S+*DSo zXL;PsFOw465Oq8b$!kx@kBtK^*y z#%ylRi&wd}Z6#Iqc@JMnaamb~Uwy2>?3~&5Dg!F#mCi@gl#olRxSq&WoZ_Njs)MT5 zrIC`oq)MtokkCOgsa+M-NwbQ%brU=zl*XXjnFG0EK<`{{0g72r8%8KW? z6LthySXK(7udt%LvaHw)W98K~lS*$jYP~%g1nU!lhNo}nkdEF1apRAmPZ51^FDP^* z#3hdif0!Q2m~TIpaW&Q3MQ;jXvkm7>dc(k6x~sHL!vw?YKYe;x!L19YS5XCdC*Cf6QRg%wcqKVJ!gI}AO|^_zG_Ux0<*JneM{m_zQn`_gkxK!&3%Er{poT*Nbnm3z0HnSU>S5cK+w7@r~ zVoqVPPf44;Fyv_hC@3tfDX%G`DHr9Hk>Kj$1z~MI)IX5YcDe-R=h~3GQ-+1z2~Qc~ zxi?-|F{i3JZ(i}tQlvk>psYqsBwQZDbh)|0XoFQ64>)%a%%3`QTAJBK(%iYgSFT&4 zg*8;oawBrL)!CA9+7tU-eAJ>pEqpS^bwbh8yN7aLR9ci-P*!MaOISY3 zSW?saWogxH7T(Bnzz8wrPfS(Ga57H5(D zMvAlXU2MN(;@DX5@=fwp%qyLhXUs{StQj;seL?9$ASf zBE9A?XOI~r)LuC^>9p5zG?ucYV)HIvIR7yFaHS^z^o>ILnc^a&w@j{p(=I?yM`6^8 zDxVoT{y+BK21<(J`v0!(>3soFM?^(~I{HH-2F-xHEJ$>CQ&7Z_MMXnofL&ZUP!lzSOPi>gw9=n)dptTJK1-pR2Wf`SJ2HA+f7fZ8H$l(q?kjz=9Z; ze(Ry3~}q3L0m)m$9muOHI@y#Z1(vuzkD+ z4s_>R=B=@r`rR@2rsjzh;fLt;xVE>FT+`l_k5K3Mwi|By^5LyhBSx7S{2QcKc|7YK z^|cDL4k#YBxx=+7C1HIGI(Bf?@Zs{`$;Xa5K0NT)lShvmH)QbO(F4bhZfDYk3*al_ z$1Yej|JYgFscUOO?(=epElKCeqt)ygbLz=#S`eBiduD~W8-|)@G+a>I6l!A6tnTB? z9Vp~gz)j6lcS$Yo)n%-WGuHN`(yh~tVW0hI2_5kT zjZJZu%iLF_Ix*3%yx2Kx%v{*iv|zr}uoL0d^0Vg472O%ax8Br$`Usw4Q6==IZwp+<)o!Oe_TdK*LK~sp~?6lg&a?#CXOS++hL(Hq` z3vDrJKmH6H+N!_k?^m9L%pKbP^uzOf(VuoY&KFI@nZ5e|g5l}wi1)7$HtONk1CzFY z%I&zqXQo%OBVX&^Q{07s=|rBtAB-6ztGB1uHqCG!rlk6f0|!lahY<7Ug;uz{BZ(TB zoVG1(sn+6g&GJWYX7n@a1=*@|!ORP1O=sRealwq53G;a9JbB^#S!(+9DdVP2A#vr0 zOqYd`1#0#}c_TK|P#a&+AVcPi`Ffr+AjE|cS~O!$>&&dFu3^C>&ozc|PV7wN#vr?w^a>MA~ zPXGf#b9wMBf*A#_LhS5GQERO`0ZeZ#?99vQGQ#!mv;xx?y2IZd3Y!`hcPiSjNV1LJ z`lOS#GN@M9^m$w5O?g9&wy}p|eCPtPsG%zbT_C&|cpi+KFzM`36V&RT@?I6u_ znmR#TTopMf+%^cvwJqxx{t@7m`UNv*)aw~Az#DYvP zeXISAiYLHXwe@XqLSkN`9N}AL9Kl2MSos?>w-@vGhQ<-a?#P3-mTptm8OT-STJhoB z=e)0sZj$G%rWy0%Bjz+t=36=KGhr*O2Jd|)XVl2ea!#W=QI(~c5tFN{Cv@h+$xLFW zEa+IdJz8_$tFIk3X-u`O|L~xHiTg+UliN2;`@7nRMRV%wd5un*UGAB+#h%ceL9;;V+Rj^bYsO0~ici|EB5wy`SjtFyZel(z8tS zqp3rGkaZWupEI~Q&Yr^(qTDmw|D<2bUq^-x<`IbHuNu?ITfGvbfV?~Vh>I51E+hc0 z`3q!Wh7Mm-J7QsDZNmiW+*Zm=%$=Wzx8ydCyJ+EzdSPUHnKNd)_kKA&y;ff3YR!n( zHb~^E34koCyZyaghTIkP?4V>>5zM?u;lE^x!gz996ipApl}^OQnig5m(1=KTC0(`QKi)81%pTidXwf~L!b^@iew_dc9csW?tZAQ)FDGRE3 z)NrlI^|4@K6C(sqUXAE#aJd?;{I)L4AKzrLQYU%|j0xj>g4QnB4d>b9jxDV+aIjF+s6Bp?)z<9Ze%}zQ~5pzTu<`k z9WkNRhstkm=p%xjAa7xd&XMrV-)t-MFvY3hGvK#?ue|cB;gjGug5R0w8t>VA7`)V1 zJ}619!oOdAR><&%T$mSo1Aq>M<%YWqr_Jehcy3{aIlLWs)y?#kRco7`(MmSi-NgP4W3H zf0C+$4uZt?5zv{Cw6z@4ALQtzlTPz@eyRJ0K)woIaQ}_||BEjj|F07tuTKRxBcB%>b3FtoFTSq5Yk8C_t<)HCJ;Y?&DORg0; zL{<(jjjF_z>%mO{m!9%@VXV)Fj2j{+v6O4a8w0%9itI9Emm#|zS?_xX(cQHypQa;w z7}xW*E85qMq04>OSl&4nyK?P{P0y~xOvcuCvAYY|CZEqzwwkgP=uQ0e^TP6?GWq$% zL5vf?)M`^Ee3UWd{-^lfjk0aXdEb&qUA%jS#6tX$y2-fH)iv(U=vaEE|-=t&rJh<|cO44aYZ ziOkr0KQC+;t@EWE5%(Q(u`Mx_cgf{G+*J&V$6J3)!_>)(t=QhhPZ91WPMhzi-F>zN zBi|7C??0l)(6=Wx#2`#;rhL@CjigL|2D%qz&Hv;cZrV?Llz4|erETd~uxisN-N(In zSCKa{RVd_zfF@Er9G1NmHsGWpTtJm zS!De65ZN3*kr*N-69Zoqyl<{VwyS#$T|%u!R&-##&Q%DyNBrGP_pNPjOizDVDW zAp1JLuR}IuWF>Y|)|av+=v6(xC=BqGiOv4lo_rg25B#D~<+J%!>b(6E`ZcmE`AwIY zPxcUOiqA3+mw54L)Gl7)(^7nzjqFBbxA}aMvO3BtZ>K%Sd{NlpD-(a4vH3Y=YsRv- z?-;-w5+j+Pc+VhWQ~GUD8%0JU`xdg>kd<#N`vdag3*0@#ZyP%F_uM}qIrbwhGrah) z%CG|@rAkvvM_@Pf~{zzhb?qixi z1ip-Xk?#ZFz`!X!FGl~?-xdlRcJC@=@Jq_YXDK_KvJI3i4}9sCNxqQ8zljIs7w@M( zvp?lV~6|%1)TeI(%h4nsJZ|*5LkrndGN@#ZdvrxDX zS;?1r%W*h#p%~`y#?1ZnsrLQi@ zmB)Tr80(8|kn&RFm-w7Q_9w_n8w<&ifcC+ukl}6kvGB!*$j6ZX9`aJ=#mm!EoC-b+ zeuTkGpOM3h<(^WJ+xcOkaEOuf^cLeKPFZj^xaI5}x}G@6A@>l8(;CVyr!3CCpS?%B zMXt|Z<(Z}#*+-GxgzQeESL)l-=$AN4-<6n)e-*BjyM}E6rzdIV) zd(Zo_^$pX?uVD&*VJ&ftKBftlW>J z+=k>DT0_~J=;gHako;BTf7D6-Qu4Q(e9<9C@iiy@P6M|a+&1=;^N;Oa`75#^WVa!^ z?tw4cJy&{tNa`(hmG+Z*OMT>!wwFWV8BH^ul8(Rs%YwvUdaVYtC9u2T?I9vK(Y*%wDZghus5|mw$>5MWOW8`ws@AdI zv-j?TxA%&~UHn}_+4+w#-|V@&ux_08)$i|_l=Waws120KA#$Q~J$0#}EOEf@!r+so zM9YfK{^)F`Y*X*ug$QM$&#!YnWm6B?U6^RfL{{YT?=jv`wuD9Fsgy~d5IHH^MA?+b znO6^v^V3+O&AQ+IAPe@72P7fZ%#k?!R`$2E$fiFnVGU=9}n|^8FyG+s=1+ zKA~*uc-rBVws?)9_iUkTIc30FuaALp!co1T%KL1N9%DTQRE?(X?O)tS;RULCCj2Q6 zFe$X}CTIF7Wmm&???t zhh2%px#oPh>xbl=VsehwIZ^}rc*(PWDmm3N7LOWDy_)QDBVr%mmM&^vy6s`9m>ZFQ zr;$d^o&w|)`$b)%>^Hppk#7FOZ4!T$68kKCp6&)!*?)I)#z@X7%6`y28=}kc@AnUh zh3e_mGn-CPIwkjNox372yXI>7a3e~R&!s8L(%P#1;NE)2Up zP5MP^xm`;QB`UW(D1QA#K$I?!v+C;VnM7ii%lrHh|LoIU{5jG#5@+iohA2FF<`DN+ zhp&*c#deESmgZ2TG{-DfEE?NBgBmQK=|z!!NYK_lSTBYsQmBtECg$zb_nj>~%3ocR}5!@9j$N(V?O$i9udwuQ$|op@~D z;*L=JN+D-QyI1RT)KTj8j;`A!m$`NOm+Nge*Q57Z@WEfFfyc`mIPyx$Ecqp8YUeK< zG;nlhzvK+6Sq+vqR;&|Id*&tL*GT?8f$fE2r+WV4Ars_-yz2ThFTo?f&Vd8nFAwxj zfJ!tUbUl0FZXKnk-BfzQK}-si{g}yr$ji5XC3Tg^yhaF4k=p;*%~?n*U+Z$!aF@9e z`Hw(AEbwIBG%_OpvRml)ZMf^2d@2=HRzU3cZEPGggqQGnnV@kF@0gEX?7qK0k@q1O zx}(&4^@CFHLd6z01wSxcUE4IO{({<>4Kt`;p~7CH5hL6b#PBoRkKuqx{eS0141c6?xDIl{HoiP4`~gI{-OfQ?aHe<{sL>XJz^-sO1s}+ZC^fUSle%` zn(sjT&a~6z$C__U+F`B7m_jS7k%tCleJH%!U4ES=yt4?D{n=e|UH*$Z4fj9Eb)#1S zUiw`@BnlNhK6d-_MVwV%Fm;i#P7-~EiYZ^Z`KPxvHC)h$er%`a4>mNW4EkO@!FYMPtVCZJ=LU>P5J|q zKINwNw?r=*-K+m2Q`WCq%btIhYhf?3DiPq~#P0ZWbZO{PolZ4r(xfX*nlkBTlLnV) zd~cIRO*++0?fdV*lS0K0+_UP1)2kOYG1AT%EMF2#ubwlgX#wZfFC=Q#{rtapy8R|o zHG45~_;t~ArG|~upU6~CIdk!J)jD{=TUY34uiKz~*ksZzCarl+^6g_$xY(+8wKrch zUB)Fw!Rk4r#Hb#`rQF9CTLb-wLdD6hbfMyWlV0qmNSr1$YB9MPlU6-1wkVw|r5Ac< zQ{-&GM(tm(-8$`K(!OqLe~&JSWaFS=?M5@ca+I$hedF2SGWqQ!#`DW`I^`OjE;s24 zH^ql$LEU6>Z#C(iCVl)ik+OegtR8=SJFEOYoV=^ZyHI>o>a)Gll`2$Z-L$&e^>}c5 z*>TN$UckG1r!>rn*YR%Zn0meyZdZfbjh5HkRO&pmopn9IX*EkNGDc#9N!9JT&Xp#O zn6&rPIzMXCIybFeDDCgI?t_f1Zco4U&l>rvN#8W-r*3L5U}mt`y4pjB|EkfOU(;#M zq*Gtl=MjG2N}}Ct(xjW(k1(THY<<_$^1Lav-Cw^dRCG7#k#1^#!5wt5b*zUTX-b_B zwC)}z?dzu25#W?{j{NT*>CKHIDlOACGa9BpyJ7m^&#f}KjYVj_cy9ew6YjJBaV;Gy zqpm&dc6zBjT>iI)NseD1a;?7t(%#a*LH-{F>7>kkuU5YFDk>XN^gAJVTBvB~@9skW zH?eOWAXmSA&TU-I+&Ru59T=ZJYSh4sWP)a$;Few|^E_*=%U{h5Yq7nE9QuKEqvXl( zKi|zLR9wSqCHa4r{6aIsXj16`;;TEknvs3OK!hz08*`QLto;2Brq?y{xW7qiJ?NG_C;!{CT)SVwW7qn(#=rZq#vk^HPR};! zai6;K|In!LXYSc&`s{(-8vB8pS_R3q4q(|{S>JO1ALagkj{E;S`M*#x=}_6}vF&jZ z4}K^m_B-4)-P?lw2jQ%T$QA#tbEWUn($W4RU8q=Q(u|whf2H@yLUB(PeoacF$ihrKh`RPjJR_C8cM%=hwEP$GPW= z4Ek{QY>tPvzUz8@k^JxPLE%w@21)np_)Q$$iKG2~EoOJE_MaQNIPX96!hX@$a%28a z+V9VE)lJ*iul;unye-V51pAkk*i@{ozMa>xtz6y`UuZrE>>Mi&`MwA36y*Q9urq-B zRhoR0*I6O@{U3m~gYXHc*$RqnKicmEHIE4ZUt%njZ;q7tK#`c}PuJZjw*BY6GSAlz zyhhFEIOE(s586uEQ$+9Qz(W_`k~G!LYu#47660 z*U1j|y4={?W4XJ1m2B`ifE0a_)!K#r7xshleK5_oUagyQ`S%|y-Y=@XckR!# zOWux74c;ykll*%-nY}f-q5D0}sO7`sDkaJA zL6Qs_GE_~TvB>?h!fSJ`X5VHK)K9)zHZ!@&weHuvt^LEj+@&00*&&Lp%`T|b;c|6& z;bM!7xeP?UojQCGY}>!Wz&xqW;qInP?uyAC_KRxpDr9W<*ObhIsPfX*%KQBBhRx!g zjN1Gxy}?x5{!9P;{!;Xu4tpZ`!qB$glv%E7+xe-j0&VtvtB>wvVMeE0Kk>1rw?-*n zmCj%q)9x^1LEEt3uC(?3FoDnL_%7XiZFsi(S(}m_IEvu%fne*VR{8^-;z+lbXseGe zp4{=gc4})EuGL0&A*^l3F0-AN7cS9kK00#u%98Uo{T<__@1sTgWwkZGh`akInl)Y% zzvBAH$Ep5ZpxQika(cf}Sy3+Bz7!vvBkK@)qv_%`>z zA=BPpxjnsjPLj%S{J$U1(tB*RkFMVzUwn%cF+jPmD==2#EaGCLSC7XqLoXj81kMG7=u2J*Yrkky%7?I_hIN5^GC&mgh zKhisAem%{v8rk24{Xb=oS;g2(fj2I?e_v1&WE~zAs(RtfYKDF$lC_E=q#AWw%m3|H zx#X*KC5u4#sE^Lpqg<3JFTLjEM{0p~D@<;2d#^ilwzVdDz>&baUtUj~Gmp=Ny%v%P zdl#PYW~QLnUUZQBcf6WcGenqyZWcFB$*dYI$&i7AOnrRgwVT7X8()2Yu=xwjtyW!9 z+tA9#=gw*zrsV%23csfdH}K+ta?&`X?QBltf?-ty*#HZM4TJ^_b!RX0-Mzznb(C9k zyS>Att_-LhxAt=V|JwC2@o0^rZ1vT4akks)YwjNA2BKn*@iY2;{(Z&$!Dy~Q?2#-< zhc;}T5fpC`wg=B!cMS8n;jfIik{?jux42rL_vt3=c<64< zz|XDJvK!+CGv=H5(}Wr&4`#A0yjL$T^*a838vEAoPc0g-8 zcUAa7db1`^vrhd&rrb5-%@WKVZfudQRwbtV^v-MxsBz&e84ru`ZSzb0l-hbBwu`rX z>&@LwLzqd*ejzw!IN4{)-5SEn7bDDX-TlnGy}Z10J~4OqE%VO*?|x@(`<7qwrR;UbiwHQO3ry9D%Fp1LsiAG3S8m(24er7gYmZ`tjZx-Yz?vRY>^Y6|+=V#L zp0`~AF6aeDEbzBF&nb_URZQ(ctEbvume=G#tA4Q;AOn-mFOA@(h{apC(Q{cTFfBAcGs7GvC`EhF4ih{^K!E_dHc~$wp*4R74>j1*&7Mx)VR+@MMIBUfp+#d zkslE79y-`7f~^`&!wiUIGWr8xxx$X9wquEZTlet~2k%!>gd2Ri%ZKTyU^!Pt%K~w7! zUi%Ja;=SkfS9j+@vpf9B?iQPL`8Io||C^DS>)l*gts5n^Rn_I%m$&yt0H)lx2FWfT zO|mtK+5NCcpOkX(H`aQ)l@yiB7H(V#bhTDMyL*ONpRR7#ZM+WJD$=I3c)V$p6*Km= zXJXKHs|WrGFL37|i#Ms|+k(X86+$pM{@h_)YK$!@mZ{OkP+?`xaqbS z{2=mo89s)dAg{y;elq!e4KH=8f`5&2ig<6hha{@%FKy>#ZVulzlXsMnI}HAR4Br#} z5O{$F;rp2U?(he|?=re=bc=oOu#AkHe~F*(8e9NeHv`&Cp1kucr!T{QVtBXMC%=!6 z-+K>y4_|&SAKxGTa${TSe~_^~jl2N{7lrrgekA;n?N}jCpKP&?`QZlyw@fXc+n+seSkha&hST~PyCbo<>a4a`19dUfES%BeEc%_5hj0$ z;bnXfoI}0k_|%+>j~3@LUaZOTtrBuFjtItIwvsZr_GDb}%Jvq95rOwyD%k?AtCGc_$2!A=e7cY?=Yx0-E zOaB>63e0V5`G&zeq(6DQ^a+oj2roM2T>6J!#@{~#=gCO_o$8a3{7L3q;wOH}5g~6d zSUG?Az&Ux=kj%ow2>S!^8Q0C>P%S~Wpc>aE2-FYgyEQkotI2( zM-u-(nHZMC|IzS=fO!UfqEFr%EBB$y8_!>cf86NG!#`r=U!%`HWcWAX1@HOh)kE$R z+M~95JOFkL*mXX;(w`(gH&G_zzsTH9`6k0(?#pk0f7RsAhW9Y_zWhn>Sumn=H2hx; zz90M>CO<)4{$luj$bZ@JRX*8I>HFf3*RIkY-q^8%SbBP21a~z!@p~t{=hHLr$C&&_ z;rkojp>7-D#lH;(|0()JUizQc=5j9fbG|Zv-;{4=1S3b<$LHYXx|4i=U+jl1(I<9W zC>Q=tgY(y|A9->Q7kS(GC;YpAYKz}YFkU_1B;SkoQ}8bu8_&Q?J;xgxUcZ=HbiR?c z5dC{9zpw~@NzwUDMduHgbE&)6UUDCh`Ht8*48NutemwjX!zYldF?JVe)T+f8X%E@#h`GUrzou!#BXc2R|Mi;&*Y} zH&G_}a=Zjzvj^PcKHL-Vry88Zy}K4y2V$$m;C8{UHvCTb+u^0|y^*`s@IByD2J_k< z+c0O-Z&n)2C)DeDgE^7>r5>LA%i-T8-2#apa%ABpm2+<#yb$|S!G2`QWULZjgf@|P zDrLfd06!l7ErTnL)iBC{xkngY<~I7QO`oDphZudIQ@%g^c7v0-y*K_&1h=ozCvDT+ z@S@LwA4{I_;)5J=e{vaLy+)AtCZAkMjEc*4F&^BFo{7FPsiPb+4*$s5oB4d9a4o#; zyPtYKo=n*#2G@`Fxma+>A4dLs_)WesO!Pi)&b_%s)|`9e@~cJVZx)qrGw0HFVn^tK z=h|W;^FkZD&lsG<(;J`HlJ}8(ekL;T?-^dsb3T5vkAKO>Z}joc!Z#Tk;){%V;!8h# zSxcGl$H1>M{GG(+IV1mb_!kU+J^UZwk2AWwI8+s#k1aZn7M-uf7AD=kAkXODF~``E z^9%OC&+z4c*T+xu@#p(^!N~nXbo#F$srz`!-tv{n++U6)<6PM2SPI|I@aw?#G5qJx zGL9PlBlvv`p8~Tld`l;KAK1Vg|84C{4w+BjCH6zL{rk_xt#Jef(WM z{th4iD<6Lw{F}y})WfrPJAU0@a5up(GyJVjGk-Sxy~tf<_-n}jzTq!{Ut;+A@C}Ba z310_)GWx`Cu_yJGV<=@)4Q>SdWcZ}<%Nygodw|G!bEAF0#=(l7m*M9d9eMaUCjYhd zg+i_2--H+ZWM7@VwttGUCWDjucz&;jpJ(!KHS&j;al-%H=b%&Mdm7!|7<5?CdH+%2Akszzk%3|HGCb{Km`6%?lFQBdGCJm=^vP98k`Mokm1*Z z9SWZ_GUC5?-F?Iu+Lto1{}%jFM&_PBu;yU+TagPH{&si|^8on%Arvon%9i9WG0lkztV|0?@OY=)n-2Rlz0oXBN-{1foc(ElV~?C4n$dorPK zjltc7&9#OfK)x4`%gL8`h-5GFJ^yEuztiOJVn2-@^aH`<;l2Je8jROxHR)fvAZ5jFQ0$@ zKK__b{$U^Q^)r$8_iI02s$Ywo9Af)U=HS9hY`o_MIe*D#&+9Le|94;h>pp&ykN4yA zzWhqlE~2NKkKYS^u<=9skc7#26ZVKg(z)v(dnLB&>LgabvIGXE2 z`p_{xecrujC}k^+zGL858U8T%I}9gx6aZSm9Z&ykdQ@|zjEZU(o7R8YnByV~fJ zGU?wk)(P*|cPBP}U~tcHKl~wldJp<$`t;3$-(YZZfAaqBwVgeKrcx$xX<#3qX@(b_ zal?xr;*WST;8FgbW%zrLU1#{`*QfRFF(WqJr2UGpu_El7wC@P=LeODFwg;2v-4Dg~ z17P$(=qiI87ksz~PYqVq)2 z`T0fXv7+;rx%U0~4|$?}`^1>%Ekou&=v{o-O8x!#Ao>2-hrugw^$)YY2-e@$y(km; zC}j_jb}#Z}J^B9nZ)LoBmps3{R1qcvCRyauk|G)L#qY;*WY&;38tRF!!6NyQ8&M329}^d(RF%8^B~TOMkU+r`)?d)GYx`E9J>-0#OGaO;XuJ6Rjdm@aY=_0Gbj&*M=-XY00vqI)v*`Y251u$ z{tovJC)0mS$E1~UB|I^VAwLqJo&?M|YnKSSS3Pq_0R0pkw5@!+* zsQ+YaL1}0Q)VrF$OF&6zJ+u=VIfZj*D^z(F&pl8SYJysztx)J}9gJMuUv>eJnTcOGt;sd3jb4q6Lkp>0rV73WazTWCjU z8I*xGLp^S#ZJ_bLBoFGJLI*VUHvEECLtCJwzoM?tE@<#-{Dx|vRnR7AJLKGfZ%_i- z4CSH9JLxM>6%>W;h1Nq`pk8-DE$D)3p!&P91FeI0L4)rh4_XbagLXhYeoeoIHbClL z^g=CA4hsJU8&Dmz99j*ngEm3ip&s`UTWBOS1*(UZLaU%P&_-x0vTkJy++a6SUM-k1Ly@|!vD1NHUgKS+Kh=MLn}S){&qkpD7y189p2A-RuBzUV)W`bc^{ ze%(VFrTo{VGUxj(smv|q{#!#Ta}<$lBL7qBEondGE|qgISCGowQs!WjefY8DKLcLU zPt&ZQ$vK!aNX4%eP#C=2r$v7+@^1ov2x*405f9U^Dfi;ipM3GJ5BYt4`9bn~5%=!o zpY6-vi~LWCuk2xaqA&kn&+C0~Uz6DT^0$#M_MRgDVqboq{F$8JLw?GaUy1%xIbTkG zcVB)Ayu_}F{NsH2E#x1<`84vU`tmd6OZ@ube^2DRct1-1Pso?_VXoD+q}Oo1PV&J@ z-6Zwe^#|mOpORh!eii9b&J(1QNSBhz{N{1w){=U0pG^KSl-H9^A-$DynfG~q3?g6Z zC+TtM4U_K1&%u%pPOcBp>)~zkU!z>o-CT!?bTsmgBZ=6CViCiC6W&=fy_$k zQ>Ii;M;mGtD^*_0jRo~dD>Zs6Zs-K#qj?Pa~{X>)0H&bV+V`68k zZ$-{k1H$L2V`JY_$K_(`+o>5U9I8=vv_=Keq`4Y=sa1h!Ep@3?c5t>Dn3>IQ>|CG* zr7s{(b;^#_QLj36yqcp1C*~+SJx2}6&QU}2@SzKpie0Ge6lr#@8kV1{szUY33eRU9 zVZIukSfEBE)xE z#mdTDO5PGRHkwf5vI%u^?)&PL*i~wLXsMczT&hk@T#f##)oGDy)x_v^sw{Dxsto;5 zl|_DtPs^1`ELTqGdKHLWuk6hA=(<4#!b$3qRDo=g^B=3z6F;FB+(=z-RFfhrX!jMg z?N8Mi$)8ew6X!ou(dbI*zEWAyo2lo`>dgGjYI6MN>;?V{RUJ&LDe<&AE0qnZ`mh%XyeO>QIgc|ip-FCg=x zs!hD8W~)CD*FO=zEH+T?qyY%ep%VUKV#z+WySuYoWy2jsn?Yg*@B%dDv%;g zZ&Bs>EvhW|2L1aDRS|!ivUk*+#5-Jv?~2#R2DjnQHf1MC zQ`=N!?tN8}{fDyR+f_y4Bju$2sVb5cmL0F;cQGohieNXZJkrgwGTp4oRCm&Sxa{|} ztlYjR#~*xDo@r@MjD#U`E1T-b3WS&BrdQjLv>alSBK5H zmJ^vrJ?2{rg7Z0_Z`q0YmK9xSRirMa4vVO3vt@;^uG&^a$zisn_o<6?)9F)DxUPVUbapzDuTMdk&|ie)V)`VwV-Cgy*($})epDngsAvdAWUAx&;V_p6qZ zc$Ikm1-aL(irAaj%2`dJ9GJgb3uAw`ROl`Ie2Y4~Z8_<;EtPxQ3PiV(ZnZAXlSbY_ z&wCd8=38ay_bruu-zpD&fZPYPIce$xt0KDH3Z%D__aXK_T3H=9||KRU`@OLNpomNG1CwcHW_}pi-*XP!v#OKuibIXZ+VOc5LR-u6H z1RdMTIJOflvsJd-ZqAk4Dp6sVr7CQdsj$mcrLBUMc6pRES!q|qy4!(FcUy(`vdf}- z*($!5Z6)`!1Nr^z%GCb06*m0i>eGc)NY6oKHqVrsIkcQ6V{5;!E zo`+u2+5st%VW3NR`@}?d*nf69<;608e65;*j8vA zb$QHoqK{$gF}pJJ7<_%jV-n5<2-)!b+0TnF|Sm8?2%7B&c7Etl-fr`{#0Vlr~`TGS_Y`=h=BF*g= z2t<1Ztn@(vJKP)Wus|SQ6|fT51yts`fR+1Uz>X{rSiv6!0?8i*tmyTDK>qqbdHjZe zoxdRv$o?dtQa1*y(A@zQxjSH|Nwaqc0^xfCcKn_|W#*oMmAp5g()VKbzCc<0KFWU^ zs0=+2s7S8~IFa84tjzBMDzr9W#UBdB0Vnlx zKt=x?aKf7ccJP%zAodz%uLZ2w>(uRa^t^#De-9}2cEE|f9k3H`!*2z*6}fjfeC$yZHMqe!oZE-V3PkHtN1Dpz_-SPW1hNiocH^{{Z)oK)1+t((Qrr%=SP<_(Nnq z3{+%443vjH3Y5h@Lgz<;Zh2Dm&p>(fpTzf{fo@sSaGv};>BrRlV|08>JwAc|1es6J zzk_=2pf3Lo1fu^A*vWr`{WNf8+$EMl zcc|lp4|7!HFvkfVPI|Z#$R6%gsD707bIKC^94quqM3=?9Var7^C3<}XsDyI!rhZDiWiR9p#keNrR)YISyaOIpv9QPFb2XKhCj(C!_adY>js+vQg40V9s`~ zj-HKt*-?p096NmpWtTdE;1Z`Syu?w_C61LL%`b5Rq07Kr<^(dA5s%Bs zyWFuN3F?q=D&p5UTt7}(?mDL;dOf~fk8h;G8=PxHH(=)m$4cLb%#HZ4f^-G-|EW`% z{w4e`@#!||aJyq=e}(Ql92L3KvDICUO5f#Frdk{;@f+;?#;J(ihY$C0p2p9#Qx>|P zxZLkJ@dq3$^*i!@N6gk@e=UAL>L~Sl#|k~>*wM#m`=^~i?rD5^2D{HVfylGqpC#RZ z&gY!+%yalp%9^4Rf$AWp{LWfvGo&o#^oOEQGn9fhKzXP)KYAB|>YyaF7Ro^kNlqA= z3MHTxC=1cWosgrP@lYIE31y&dP_RrnRZt9C2Bo3RkSfPM6os0h6qJE-kg7liib2bu zG_)DwNyX_8MWJRW1#N)xQ15Qai9mHw5?Tx8pvvy}3{8a+Pz#iWc0!@O@EM9jE1?Xu z4dVINse)qAGAIpghWKG5r#}>hnxPc50m?(Y_rX3?2PL5_RJkvCP&1T*Hb9j@bU-mE z0j-7dP;ftdff7&(+6?W4!aQ5^ob4=wTA&=nv$j(OO@(;Yb~Zr#z?f47@w`n((d!L8 z)T#F1ZXe32tT)?X(kLnYpdt?{RHp1W3n;;IWv9xOCGkzM7Le|y0znoq@_Vt2!3#!- zy;YASACE+-6TSvwELbP^Q_Ra$MNB`>mt_uANy@E}zlJxGjOz}*EOi1k=3V{u&@_0yY&JJ%2E@R9hs<9j5ITm^?}oslR8}mSSL}bNvd~xl5$utQNc5m6Fo!Oi8H8M zR2>|pqr{@Bdvda}64fe@u2vPf>B@=EqK>mvS$-CAs{vc1$`duJEJd2*oc*utR4w&q zJtbd@&e`P6MxHcs0qZ%er)2BYH*yR}p*boLor8YXO_CR?^6Z7^B@NF-X0Ec6q-oOp zTvegwAwN&qani&*70AHng`dyb(0u%lt3yL^;ulwe#6{S+NLj44s92*qEZC$DXPreQ z7phR6Gu8@JsBdR~K%4$hg(IxDq?fCK;UB3%*&nInlh>=k;TzPD ze3J4XtD*6qfWJ`<3$0L9nH6d{>nkI|H{s_^>V)vmC|jvUMp$1--K@S7Wo;$%b9G|) z7wV+YDq^upMIyJTQTbcc==3kum`F;E&8O73BrRc*yAdedmQW&%8F&w4Ay^C{7E%4Pa1kk1)@(WJMk29>(wmv zw5nk}NM)W;wV`L#Y}SJ=kaeKQbE+=$oSGA1?I-!Xx-kEOnj3#n)w8}cFZU-kKb=(z zVlSz9`X#0EFR6=in^Z&m71fx11skubrsS*Szp56p-lMXAQ5PpSt3~0zs^;u##QJr$ zILew&_ziW5dQ)ARdQ&Zl|4m&M%+Z!Pb$Rgb>WbXoRU-Bly53e-rrt)!R`vbZJL;;$ zHvD;CElqu(t`7Y}U8A-WqwVV2_=jp){zG+L@}Km@f2toO^XiAGkJa+d1Gxg)#XT;-k^^@c-bz|sDwIZghpGGX}CYBL?7PhUGDcibP1+1UP13b?= z)-Muemdce`tCHmwBe-=-yu!Mb^`u{hx>>2*-qvmLeXQGa`&hqyA{= zx--l=Qer>ru3S&6CAPn%BE77;bG@v4A_rK%jvmOG$AQ+p!Gp*@$oh@yZQYmbjcjl0 zx8XikI@QOzKXIt_KwhswJs3UQT9Z56dMFWM-QWo8;oK3{?-EC%<4D#I`r>C_Yi;Z( z>k-w@dNkk9`hD_fbRBK2OZT@Pi+`?2Ev0V{#)h*7G2Hr7WQ3K?jIdPr1nZ^r305FD(yGjkv|dhs$NF>lMC_i(`p${grszr5 zE3Aj{Kw#P7h^6uo>(%%ubd0hpqob|A@q0r&zD2#^d7zYfJJ} z@TXdD1SesClJ#cj4D3a%zvZG+3=Yir`W);pnTRvu|9}iX#GRYrEc?B=bC42PtLbK3@%^|=OXl8WCgOMInrQ*RTgdlM;a&1 zHc-|`T^g-Gq{*`5P2@FMfzU$B$t;9lNdCq6w8;7>x`?%&MbwF zkX-@xXI3EpGs_OGr2J;eZno^q&6X4UId%BCD=W8%`Az zgO)*QXfwnQg**MBDAWw4pbbzS>V1fEB2XQagw{eisPY@i2}4t%1k?g$p`B2u5A#MS z4y}YT&^Cy_sW??o3|a=sd}}kL4#Peag_@xhv;oRPy${DeR0k!YwNMVK3}GLd3MHTx zi20eb6AB%HeJBpCgfh@JD0n3Hp%}CbN<(?5_y1r6s)LfyS||rq_QeJ?6-q!YP!`$= zg^t1o6o*zq8E6|6WR6z_#h_&}--9+o>S*c+MWJRW1#N)xQ1AZOhw7jtv=+)imEXiZ zG!;rfEl?KP35AZqJ`{&mLK$cq#2nJ8f@07zC=G3f)Bx;5QK%V8K^vev)caWMLv>IR zS_|c%%HyyPO@$Ir3zUU+LZNSCABsaOp$xPQ3Wl){#h_(S8rlr0f!K$lP&1T*Hb8l( z_aN*;bx;yo3+157Xa##zR3;fF`jXuTiv4hBL5_cu=N{wt30`BLws-l2t16b4-%uvFvC!0;G;X#= zDdpkDT~#Jof~$wpD>ZJ3WXj>;eEL?9-SP{Ko9TjlxKpmes`hOi+3{5xcZi2Gsn}y` zqLRPV_p!baLex0IHuqh$U^!e;A1-H`R zO4WmwBw&zD?kI|FP?OuvDr-FLqszzO+^IOI_DvBDmno8ds_wP2e_c(zsIf zSOqTmipG^{kM-bIZq~R`?XewP{&kHj)gHYVUzTmrxKi~P2`=(CjVo1;8gP|4jVo1; z<=}#EYh0;%tN~Z|uEv$B#};tvJ&jw!HQ*jz|MT@{r<}|G9~yU?fwhhYzJ59YTx7e( zl^Q3ffNTCx<7$fa`NuzS8H3xCKDh_27XLod`ijSSDPP}3`BuvN=l3k{RJ4^JP98no!^8RFEBD994vo9gz*^hEr_a4V8XS)$`shTT z+#l7aTHoac=GQ0vtuOgop%#PtUI~3YD2wjY`gk!`AD!4846grY8rPv+ef8jxO=S)4 zf)aL@Qr7zmt#4MbUElrSUT`sk`=S`+jDpFO>egM*QpDHEs*I)WI58a(+l3sXRpEI`n5>Tn2!Pd_&_d_XZBHJ$yL+ zY^OGVTjS0vu7|I_{HaX^!x~qreOH5pNMlavhhA;4%g`p1Qk-=b!I>umjw- z*2$#1D77Dal9(BN4s0WEjvl$#+2}{2ltWCIE|Ar*gZO_$6#=44X#vwnFcO=iq>~S z34KdNpTU*VcQ3g7c&)Egf8GSHWrD_)(zgp-=roP%?Ec|hZ+*FcHXB?ieG|cjCUtGM z3Ebu`aNgxr{M;(@0in$^w4Lr=Tus`QT)5`z$yKiU@8tR#Kf||bxdgFx53fJ@uE((y zEL*K{EETuM`TDzz5t%zQ?$>+h?_Jja{m$zlF&zn|cXwXimEO(jbN4=4+#a6Zm6f`@ zhpt`g|6S=#9^bj%uH>ek*SVbMPxE&>FYiik_WZ9W*T1QAInSTEMCavQ`IEf4b2(3M z@`29FyV6_rO6PK(-ff#ZFYiik`nAsGJiUn?Uv%1!y3$*9vX(3EU!LA=r+huV;rY8d z^~ckjZ|J&b1trgJ&3 z9^;qoxqKRTkG0ozUfxwb^UFJz^X$g2@4UP#y;XN~F6ZfOxwG@~uJnfP?Oe{&oBU1Z z<$KcW%}ZL+T5h#>C-&wgzUN+$}syTGvT@?dCYl=QnEHbHzB{buQ}~Q(w@yRV8q; zu8}pkKbFABx<>PhUDsFEHIjeQxKiVWtZQt`YTQSi*!8YoS=R`@tZ~0C#`)qR>l&4R z*0|XvaI&ruHMsYRam3HFE9)9{o3y^?OWBlM=mtuBF+b&VE-d%pxu z)-}R8t?%U$xK-dP-_p2CigCW{ay_`1!F^DS^TlPm`1iKfSL(jdtCIe_RpUCWNBQiI z1h>}UI$TFSyEWjl?{sZ;=dlln+c2|Q_A9ihbBe*WgO6=ZyuI&1-$7;#?1I>c<+_VI9$TpI!kj{4b4r$E$}o zubXgHx8;>LRP-f(9k|{*G;UA+^)m9s>w_XMbK|w2YWWV=wJ#21!A1U~ab3-CH}BNA zQsd4F^aVfDxVz!q!)qsB9AvJr(%?$XTepJCeXjMDnzzdQw(1LwTdb|N^$(w2ncwCN z?yTbR-FIEP^V@>f*X8`y;7W}$|IjKAGQU z3~qEW&UYQk{Iq|x8o1ixO_3rXIJL8!9%*XEA!hr zgZpK1J$&_*`E9t5)^}gAU0?r``R!VREA>8y%x_bNYJFFh&?ocT%EL6Swzxffagq6L z^azbBHQvkow#DE|^%t4nsw1_&=NUuX!|Mk=yYBq9uf}!wJG8GoWPY1CO5*}0^vV3T z`Dl&1&X{fOf4(@&{5EHBkrHu{`R&eQw7w4WYV>)}VKTo>e@o*^#YN_~l>;=cLw$Yz z$^15IaCIf>A@kdn2G?QS@QnvDzs-IHyE4D6I!^mn>Ume@x3O<)T!(qOuia#RJ2k9v zvy1ED!^!+MWpE!C<9u>sN5yu1 zIGNv$AFgqw-ox1nE-^ymO7-U+dof;}pm8^susaxBc%;UiQ;hTV(`n%949+edPkqD`lRQz^{epfQEdKSme7w7fhg5xyqhsFAQxb5JY4er)roUc84?aladvewsO z9n^;#39kPs8rNZdXHbe?Gfw#6N@M^FMuf*O3pm1>DNh zw7ydFHD@2jzlmM@HvnAa>0SFb1zf`5O8K`0T<6-8YkiND!1V}H-*Yr>bqU;Ha4Ca(zXWa?xSdnAzU9R@Uq4+6E_<%V?P;B&FY@<- zt2$5PO1*El30%_PO0A>p0yqAt|Itj~v&b*P;NcSi}FtV1OhYkj50Fri=vn^~;SH;&0V)P`%czTXw&d~uO=sMxg{cUuXZ ztV3=1fyQ+hk9~G!9V+@mjoZ_8-3L3e4z>A4jblpO?vU|yDdpQt`L$lDcb)m{$@f+9 z6{YQozD?j-eyVY$^z8x{ys2w_eI2f!pOwb#X&jOI3pM{j%Xe1)k(Ae&^2^}e!>hk( zzdh-f`nvjmqxHXK#MQ|i|GqGmviN-(=g{}vqX=hm|38~dJe>9iruy9<0*=Y$_~A<)J!lHsviQUAC{zpVnQcHT&x{y|+#W{6Fly z30zcV{5_02nHHudZaMB~mgA1L4d8-1iY9IWA_|H!0xDYOq*+u}(~fC1rX^`5W+vql zTBc2jQVjXFLg$EgzUEg0&r;r_0dvBKlhu8;J~B6i*``1y&y=6W|NZdV1|NZyh4E#3(|II)tGms#Br$fsO$G01f zb>4sY-wgaW1OLsye>3p^uNklw8|(jU+&Q1&hjG~U3+@v%)~0_RYWDoe>}EIvnvff; zJolCzuig(w6&qm^Fy#FpdCrFd#4vuF^aFoW(0eoFjnn--;+^JW$V-qs{#`?_&5)NS zdG=z1S+Wgz>5`XIPF|+uWtKCJ&n2(mm{;$7jN|x0^0LdRuTb)wC(EwScdA-HIpx&X zMDm=c%dW43+|Fnbnv$<-SH?nb_r$+76{sWRo*qK zx?-NG;nUpx9eNIly9Du_E0U=o>=*C;Y?l7$dAQp7iMmVGnB=r&e@aIj^ezMXgY%d#h283x6Zh-9(sRlwn*h z>4#q5hh$vNRqDK`423y@QE#Z@0zt=Wb?moBp`B)ashiDRy7+B1Upbq-^Oi}uKJ^bd z&fD&tS9NVU^DXyjsQ6gAzKC_+=lRJW*0TuO1mkqxZ|eHk|4{8a1q%dI4S8Wwo^B}D z?PnOuD|)@7ic~-H1ofMsV2+^fhf~I-ueaj{HO>Ob)BK^2&Co|G2-6iw z1D^e1QGt%*Yf8BJ3AzvPpXIRkeYH&YNAmD}Jnqye!8}1nRaKrTXu)^&aElVOxsQB& zG}iE`;)7pwo-f5dnbNMF9zXGE8RvUHf9w|Q0obkB1F>@(wBCCiWlMWGf(3#Jk{5c! z`#!(VP+rk>P|!$?)2FdQJ>MGHYxi?a;ub-xpc(~!&MN)VmnXHp>gTQv-s6jEsM@g$ zIt6njFCbr?=fsyUa4Qh>le~OGo?YUFhH~96-}hAedGd!D3k3bHlYX>RsPm2QqZ0n% z`vprIRd1%Co==U%^BSP?oNW~r2U=ZIFyveBRqf*YtlX#A1v3SG?o;I!!6?B@!RFEsd5fEo_cD&D>*%AZ!QW1o zW8_+}S9G1?yR~o@-aiTIdDN)q)8$Zk{QfO&*@Er^{1?DqCdQ`cbDZ=G-__+V4-@3~ zc5!nG<_H!DS{JCeL(t;RR%7E!<9uXEyLvwK&)=BKXFw*t!;71KE*2l_as%ebvE^NL z9)3l}y|FHCH89J3ziF4aQ;^>g=D7u)@ScxnJ+6~yUL`qA|GcoEKox|YR%jP=3T6uC z2o?zXob_(Mqz#+zl=1yd?&Hk*3iAZ@b+Fv1%A*7`1ugEg%&&v(r1!e)AV05^ z(|igVs(LMr6j}xCf;oZ(f;Q==Q;^SaZW@j2AluNs{`oA=;l0%Rv$F5&5#_{LkLNZ~ z@}o|b+<%N$`2Gu&>maD_JB^(2rl>a?-+{%A--YGgdI_o{pA6}TUQc=Q^I)Id-s8@Y zV{1R}^Ro;CHRR)A5~7CUE-Oi)p*kcKQ8AyV>@3-e!iTq<9=VLe!3=jUuTPy z>%59yXXi{+pWiHn`ub|*b-swo^CVs%=rh~99}#D~ue1Jr2kTzd?sO&^<~Q|Aj(D{<4PdacU%zyBXnB99mS`zAW0K>Fj)4_RT$64Y_m zKABI!9Kl_NJe{vGx16}n)0i*$&M#DZEYhCK*-DE5lZn_c=>AgJd{Bj@c8)SKN>jUz`ePY@yZ7WbF;y!l$xaYg$R z)lRjOC#d_Ok^SNQpV?mJWeesAN_Tt;4gG2L5BuZnpxW`fMWOD8M)rq4LduhPfuPT= zDqr^}?Sl9G*rY#>PAaeX`6tJ^+=xzzTRN-rv})4G_UOOq&Hr!Ju3lH;q+P~2hKgPv zzb>j>r=Xq(je0(!x~e?8phHmiD_#1f`8o9;ULTj#Yw4!i)BVuM{%}4DB<|B)<@pKf z{sdg~zCO=Nf5LjGe1~ABpdY@R)xC-D;gsV7L0eB1Z!Qg(@nM#>v_;<&B(ZBD_bJ&N9-Z!@4sz2F+dVOlt>(m*p@?3(Mf^3&tj`U04Hx~K5a%+T) zSI|CA9oywt&qt;l=LuRzt2{jq8jbT2RpdP%`uE(~CtjC|&WA(V^%6f05D47rYv#MT|h5yytMfbI1*<$f;ZEu&I_on1!uPQrlv*cM;mz|fZ z+kLa_yh6!yHTTw4#&P&2sO#ctQFdMv$+NXAJFkPzvzDD_lf1BU^1>v~r)}BwMM+*% zIrTXt&(f~!`kazyFQ>khy1tvsuJ2vR%j{5g-Y&^=l+$jWUeI}@UKS7m^&k0viXXyL%W4TXlhCJi?_Lp%Ll#|y%^73L-`?_6YeYZ=V zt(^G`lf2B>vg?bIys&cWOVRz4JimBVuT9V)sD11_Ikrwwc@9B~3{0c(`RQ9tu8h1P z%#(TMX?$+!%_1*mRMP84M~X3wuUt>6_S2-^sBl$(M1;aPm%^~+3IkqMXnS4CS1BwI z%*as3Id3QoSfkMTroynd6sE3~<4lE?b%O6GEEL?eUL6dR&^Zlp+Z}>J}J0F zaE0Jof*S?53GNm=Ao#Q3QNgojV2I#g!BK+If>Q-&3eFdN zMDQ8GmjqV{t`poOxI=KS;J1PY1y2Z`7p$~IjpJIu`hv{_+X;3NyhE^`;4s0lg0X^$ zf^!5H3O+9Qg5Yw&HG&%iKNS2_@JqoT1&;`x7W`YV+KXyD*9$fjY$E8;)p+U(HWh3u*h%m< z!9IdR1xE|U2u>56E%<=oV}j2Kz9RUB;CjI=f;$EG34Sm5o8T$IzXYo+Q{$*D*g&wk z;LU>F1n&~;FBmR3UU0JD48eN^7YRNoxI}P;;9G(l1-A+A7Ca#Mv*1y|vx1idYrLe! zQ%A6|U~9pSf;|O81P2R_5{wp{DmYVczThK*&j`LGxJq!H;3mNxf_nwO6+9?-Lh!s` zrI*z>t`)2=*i5jUU>CtV1p5gN6C5iTE0`!aM{uFwO>nm01A>nUJ}3B!;2VPL z1-A(96x=8Hz2I+xrv(2Jtg>8$l%!F7V01a}DT75rB4px_C?^MaLDsBv5?SYNQ2U^~Gsf_Dh^6C5TuRxnmD zQE-mnLczxcUl3d_xJGb;;D>^r3Vtc5e~zPlFMX_iuLtmMHb8dIH@41$YMi>Ppkawm zrpr9hf&{#{b8k9B{;q`bg@X7{U~j7Ki7k541->t9?hFD$@oJqpe4 zSKI4q-fEsysP89zzl2IWw3PdqJqVMy+5KK9_tPlD`NduPLXE?268Dw386Wsb+-Y*Y zzr-_5;ueYLn8X7lUSJZ}mdc7n__PAo0zH^U<{XIck;o69uK$?_eLX2V(c!%*N|z zUi$hqn>W`#n70P#h$Tbycbj3{>?7}m0EzE3iCZO}V~A@$3zYb`CUKj@51Yh8C4R;v z9wzb1$4j602#Ncd#G@o`HHpVbJj^6+m-u9pc&fywo5URwpJNhFllX%sai_$eF^Q*3 z++`AXNqn_QJVWAHCh<&(Z!?K!Nqo0SJX_-5o5XiX{8y8Bj>JzG;(Gl$@PhYU@!wNt z0GrwUlGVcGzQdcS0G!9&bIXzU<(_3_y|y5DHSZI$-cakg$nd^j-&ffZH+vtkOX3#8 z`waGt_jQiMgA8$9f3CzsONnzn^CTW_i0k_EC2o8lqU$e^xY>0rl(^Y_?Xz0V&pn3r zb^Q)pFZOd6JLIvMT`y~!id}cRwChoInJ+Dfa^Cf3_Wn@!+pZG@&DskHs93*U|I7V0 zYcJ2N-xx3NG47sQ&OhikzE;D>wnnX!gC^@FRN^O1;$admG>Jz@JpF9x&z~rX_de$x z=h(O&;v^pNr*~YhW4pwwpSm*6IZBndpCPX6cSzh~i0k^(ByKZ_J0)%}CC>XRUE=p7TjFN(wyT_Z$&q+iDf7x1aA4=WMPT>b%*LC2OU35R{txDj{Fg^ zXRcgt98bQ)&DLXq#FrObc|J#2DDgEWaUc2nQ12V!oI~=juf($ralKysB!0jo?l1A* zOyU-aA1ftpLHhv`KT}GaDWCtv+G@WYsJ=$P1^OW zyR6q11j(=d>s5cJn)KTu@l=zz19fm*7VMszS%0jZDmE_1KNuH({Z5s* znGfNRxXa}HG>Mz}5Kf72E9HECW-49cX7`gz;(4W<&lz-J=e&nu_uS0p%eQmI=G{lu zxo6#Fy|y4o9?Ft_oAFGx#5N@!qAxEjZmz;$}SLFY%~S&i7n5IqZw)Ci$L4eC_B` zv327xsmEBaKDOWmpZiwnx7l?Kl(^Zv*(Cm+$+$x$o^28jllbL7ujFrDHwSiND0a`y zY`j_BDmHI<|6tz8bGzj4$(iw7j>N4d?=y2HZpL$Y5;waa@+EG@a|IGN z=BuE4#pc~dc*ygbmi5|#Air+VZ=+f#W<2Mw<0d?3k+>NT21wj&-mDTgy_WN*O<|P?W^`nZ)BHKFlO;m-uLtc&fzXOyUlSC!582jj?B8 z_u3@is|*KmffZYK4wHI}_3C2_Uhq4(eBW2=&dlfVlen2r;V*GBePogNic;n!0PP1z ze4R<$DseNu36%J@QqJcL+9dvwNjy~IJ51tX65nkScc2Yk*KF*bo7wfq>s7JqnkVgg z)?Ln`iH1wraDr_7_7ALc*~=aGH)+DzIDy`y6DXg8_H zt1XWM3tm$z`hQmT{b7-~*|-8EUfTORj=+JP;|{>?xtaF&&WerOS;28T&}Pk?!>)@pdNhG>P{#i902Jn@QY(K62gyv3qW2S(o2`d5iI=9+*+Zwq zOVewNr%T-DoSI+b@1eLPUfB>QcU8rnA@OR4xb`C*$l<)&uzPN1^N|r!v3d2Ac0KDZ z>$L?z_AOufZN^Up5;xumNs36%I? zlj~`dxS5^`mH0T5^TQ-=#>){BH@hxT5;wapaT2$iv~QQV(y zN!)=dI4%oz&&{kqt^pMrm;E1%i|>oG_N#H3-KW_SH~V?@E{U7@5;+n#yH9f^UeTZ1 znvFMgV8!Om^$+Ha?=vi4mOXC)5;vPStHjObEl}d+&5Q9qF&j_jpo+~)_CK7Lh_BSV zd~0$aL`mGt2aA)qnJ;daxS4P5z_sCh#=n8;xtWb;*WilHOTj;w7rwu9O25tSvvi4@ z`O+?lH!4)~YkV#^&<4kC#qPP8^*3*b$+)q&15g2X&&_sGwd+|{)@uubo-LUDzMlOT zRj*y@_Z%1dV3EI*xB%7n|=PuC2_w?-q(fw zhh@fRQXCn zxkY|q+Sq=<8kL_7;QgAR4vYWSpK~l6rtTj7ImZZ-&rdmdlXz~1<6X;CJ)S9^uP+Q& zarb*1k3c3~bB^+5UFZ<|{BO3LHtKBF&HKZ6{dL`p^Y;=yk#(T2w~iavM|tJOb))mm z%EwE)`a0`;vvTA5)A`@Z`m)I96m|J|;RD-MmOo)K4`$_@zed=b$U4@aKh*6%FT8Q_ zcXeOra+h3h{kcS4UQP0i4oD{A79MT}|@M%CD7qGtR$Rc{Q0&{kcrtAG7j?Ci8!btULXAPF>GI znFr(bvPeDp^PW2YD=F8X|J3CpWL(C2^nKmSB%X~5$RX*vB0)dl=TzY%{drN}n@Z;| zzqhYPkq6(Gd}H}ThUby4$N0R{M_rFux$(KF^UcbGWn4!7H7hqhe|7z4 zO9v+`tZX5()n`}owU9}!1f z_2gd@i7SU**h)0pjO|Q5e9aW*E_!?NCSuar>9-Sm{WSOXH2EhPjNiC$2->NcqX^$GMVFfc)+_)a6Gkd zt@S;}(=>ELzpHJ>_tVX1Ii}lIefA*7baUaempP`>-J3>oO#2obev4yjmT>3I9MjY- zL4R{hbDG~@x2!SQqyrAY^p1}P^W{^$d(0s2{X5(Jj{CLmHyq{h*zI@sB%ZEwdNgt6 zg1eq39=NB8`yF-q>KeH`t~7Sx4aBXBI<+ExG_Tf3V#@ffNyN+ResU03RsX>~|0$=J zy4S_F_@#$f{!qWIr-+}tw2i+m=JWaTTJCxhI~=`*$EzPq89@Bujm&Yx@6!I7MI1it zPWK~i+9#bdc)Y7^l}zH!`J+E1p1n5j6Jo!oRvjP?i%~yFpWLopJsvNrxv?!VuzBNK zi5I7J7)-2NJ20F$BDrQPaZ}AH?)Gl|bo&E5UeqDUJrB$CKYW$P11B|dw{L%J;C3Fb z7?!Y;*f9U;eZ*GPmwZiJ)a^QceT$FXHN}04+_-HeA3r|62|aEi4w@b6?$3tJnO%9j zzE%_W{0~^2JA}tWKU?NruV)i)jpOmj1y80B6JuUWCDu#b^&ru=^3KJ?3q@O<#A69z zD~ab<{N=u{&ZN$8&kM^++rp&KCD`KafN!`~_QalQ$+gn)w!z1_RyKeC$OBv}fg3{4 za;-GXsrDY%%F>|?*K)1+KQQe(u9e`*RaS7VY)!QH;aXYz&Y>Y(E5E*5bbxCm@sWGa zaILI+{>Iz5R=VA=vo+Vsvu)z{a;@wiaQbDgm4mH^26C-zII#FJu9etjZ_eggnOXVf z(OfGF54}E}YvrrIgSK$3YzVKjkZWbl&y!Aat@w3*_ZF^|yPE%<&b4yrx>H-ZR<=Kx zaR=8*>s2+M;aW*tP$iFR#XkMInp`UvJMQnxwbJI(HsiQfPPG4c4A;uf>z{jxYvrey zwU2SFWV|!`cCMAfZ=dMLwQ^gx1@*XACRRB;h-;;iHFz`E%2O{C=5Vc8w~naJwc6)7)A}{HzI^+j+J4JEp4>F#z2G}{Z~bb=p!WC2UR>60{^;WuzV5Xq zad%{ch<*bWH|(8I+8SjUy$o*rT|aJ>TK1Xz$eKN;F8}aB`m7P1{R)2B|B;H6{y*RU zakDCLYh%7#;7|pRDs=eppO25@F?Gy5_p1k_{2Ep6coa$8(iHfh+`*UVpBr($LKdRz z5r@Jmf|Ugo_&93H3pwAR+jB^s?uW0cSF(Ms*s4m2ub^?Bt~fyoY=REK8o*lE>tMeT zdqt0Vz4-Iz>#&o6D|*av@N?)SPyQWSmKthhXZ;Dc{_^ zacBPbc1x?1Uu@a7_WJw&Z2!r_{p$9$W>k8v@1@*yNBr9Jy&qdQwy0?9H{%{@QO7y; znHlMqo(P%qdUM}*`%h?n(>dFETlTOq_q18P^Sz_v{W^XfUaxoM2M#aK-SzjEM-K1# zrTN!2dVKV7?E`70G@hg(0ne`&ylw#$ECWIgp&wWeuRd**!g?QcuIKU{dxEQW zvAmA&kOlXLpYL|2*OpEDziI!}mk%A2X}AKgUfrA4f4u%>ZS;e=@j7wS>sTM_^{k>- z{{L^!*ZtJ(7P-Hy>B@F=$rbtTcegrvB^vY94?VBU(j~8f2Gn7F9`Dz(HexTl zg>F;6T0if?sU1)COgi-Cmgw!Tv>xzmmr0*5Y}zX&fA{~VPBEP+!#sTw6Z2Z(efK?h za`x;c=kC4t@uD+lYJWX->Xx4p6W2YpW55)%AwOyDu@8MGyF4TW#^yp(x^y~NO-vtHN2EFyx z@%3MQH97LtS1JGt zx_2LQ|6O+l{dxX;<%OSrJ~Xat*KxyMd+m>Xzx~$ruhXY}f1NSonKik&$rCzt3U6P( z{$0LRtJZpM=g#4MTeggS>7$SCvHJT5^mzXHiy0v@b#<%=1efm4^ zju~@utjqQH%HhM$&ARQj!5hE+I(pvv^I@NyY>eauU`1|i09|{TC@#5gY-%RS#Wn`U2i=KV7PoKR< z|N6_XYURq+FVCOelV{(edLQw?;<(((Q#8UQO%W`}12HH0b%v#~+UxxoXv!i}&BZVD24v z^xHLY;+r3gAAh8C!-h8>PELLMNOp0Q!W$DdD{wAvXOnp?d}m1^hDovYO3y6bM(9v!`6O1Ey2Z;u-FSN!|$ z=QMcep{JH?+ZNHQY16iCUw--hZ-4nE@K|AC-J8?X*SDxsr_28M_)Two`>nmk6Hh$S z<=JOf-LiD)d$-?oQ;Yf!Km7EkM~_+_{^E=Nt4EG33JVBGeeLI;=T=#~_{q`Bmlt01 z$RmzMwQDzs{qV!@zBzoj(}TgmpX9{FWi1E_`l#KKC7EMxxn=fE*I!@f-ptJ186!qq zoVIDx*Bx%WvDek|#A_gm2SF4|KopOIC~AW!wty(sfhb0RD8fJ#RX`MPfGFmHC>nw& zCV(gogD74EQS<>(yab}KfhZmZQPc-f90O5&3Zl3cL~$HMF&RX02}JQbh~h&K#d#3L z^B{_`Ad2lEiY6e6w?PzBKony@6hR=0${>oNAc}Dyia$UUT|pGSAc|)|6v-fpa1g~^ zAc|Tbis2xNSP;cMAc_DG#c~kE^&pB3Ac|{16x~4-OFT1&HEa5XGG!iWwk^7eEw$f+*rZ z6rAr4Ac`muMKch^E)c~D5XDvyMPCrbw;+mvAc~(r6kmZT@<9{>KonC!6zxG2zkw)j z1X1h&QG5fU7zv_y7DTZZMBxXbs1Bld07Ov$qUa5x_y9z45JYhnL~$8Jkqx4F6h!eB zh+;E{A{0bX6-4nfh+-RvVkU?p21H>6Q8WTkTnD0<2BH`QqNoR==mw(b2%`7}MDZ$! z;&Tv1PY}f@5XBh~#R3pTKM=*6Ac`X(ikm?c&w(ghAc}Ml#XbO0Kospj6kmcUZU<4!0a5%4qG$@Dm<6J^4McG_h++tc;wBKq_aKUzAc_PK#UT*I zco4;O5XC7F#p@u73=qXi5Je9V#bY3f&LD~q5XEQ^#YPatVi3hd5XF8FMIMOaT@b|u z5Je3TMQaenS`ft(Ac~_P3V#sA0T4wRh$0b0kp!Y>1)?|&qSy(d7zUzf38J_UM6nD+ z(HunaBZ%S$5XD0vibWs_Cx{{#MDa0*Vl{{&7erAFL{SMuaRZ2A1&AUNMDZ7hA_qkA z6o?`MM9~&R@ji$m5JXWIM6n)3(FH`Y2}EHBQ9J^oSOubZ4@A)dMDa9;!UCe`527dn zQKW(>=7K1m1W^=%C>$V)1|W*>Kop%o6rX@7vOp9cfhaOT6th7TbwCumK@=B36kmfV zdVwgemM3CB6!(EBW`ij11yP&gD7qTQG5-eSP!CT2ckF#qUZ>sco0Mp4x-oxqTqa=08v;# z6c<4h>p&D^K@?L!6uUtbTR{{(K@}aAc`Ci#VHWQY7oWWAc_zW#b6Lc z7ZAlF5Jevl#a|$b${>pQAc`;$#qA)9S3ndQAc|oiiWMLV8;Igb5XI9VikCnXfgp-M zK@^)o6z_p3z5`J-2T}NeD2hN7XF(MEK@@vH6tzGUbwL!zK@^c7iWfi>y+ITWKolQ? zC{}?e?gvra0iu`)q8JaNXb7T622n(TC>{V&3h~haA#UT*I91z735XCMKMGp|gG!Vt(Ac_MZiXkA1H$W5#Ad0&|6n}syeg{#+ zf+*&KDBcE9_<|@t08ylZC|ZLkZUs>^0a3gTqIefX@d=0`A4KsZh$00<(F{Z}5Ja&B zMDZAi;!zNV9Yk>_h++eXViJfV6hu)4L~#y8aUF;v8br|zL@^3P@ji&+ArQqj5JgiE z#mgXyUqBRvAc}MlMI8`DJc#035XBQ9if2I-OFMiCqX@F&YsikDAUmFd?1+Nws0`Wh1!TwFkR3-LJ2pUe42JAD4%zV} zWJfc|jz=InEMA8M^ng- z2*{4EkR9D2JAQ!dco(u`EM&(@$c|Z%9UCD#=0SE0hwS(fvg01ej=GQ?uS0gc@8$^* z1!RW}vg06R#~jFx_aHmIg6w!4vSTu2M-pVmvydI>kR6$j9g844HbHjmfb19w*>M80 z;~~h77a=<)L3Y%E?06Ki<0xcDRmhIZkR2|_j#S8w){q?oAv<1$>=+N(;ehO@2H9~J zWJhzz4m)JWX~>Qk$d1{N9cv*wf+0IBkR884c3gt&_z<$=0mu%2$c{FU9UnnNjm$1{)}BOyC3LUzoB?AQg_@d0EkR4|sJN80$dx6;K4iz8kR8uMc0@yV)Q0T19x=cASUoXad=> z9kOEzWXIc(9r2JI4In#~Kz8(k>}U(w@hxP>G02XaAv;i88 z9c0HC$c~#JJMM+-$bjsa2HDZ!YI%Zr*IiTl+9o$Ny77j_4VnhF>e`|EEj`<|>V9jl z_II`HWDkvtxIZX1JYh`IkO|@Q`-CQpOX(XsZ2pM*`%V}$dtiK?Gbi)pk{>r+T=3cJ zXCB-6R_?opmVLeD=nEgee)-YQ)}DR9nVXgW^1clR7k~EZ1bfapQtXUsgHGE)D!40>qnYz2%tCO4gH@jC^ZRw_qfR$mG`g_f6UjS!d^qomUhgIzxaE!LA1trF zHEY_r74xGmt(!PI@55a^fk-P<4e%lGDI&sS>m%HYFW`i7j!96aogRbi2rR*#*z{gEm6?tU;jKIfVH zCV%_#>^t5*a8s96x%HcG-s{_O!}coG9{r{BwF{5;Y?%Ics|HV<>o{xh*N><6{{EpU zk)JP}c=tBvkoaGh+oDdb9)54(#&Jo1ZmwQ!>jB?d>wjw0VC6^kZhB+aoy{Np%Np?T znHF7~r#kd{>Cp2(R=*?tt82SIy0^*A4}Ma|^7dby>$nQ;YV^*rfEt^BZC&f|bJJt< zm&HuK@Ni1~(Qn~qr$ap%+*hINTrG@#YI$3oi8+SheLv!Cxsthc94>NOvA zoLTv(-`!n~G#nfFXXQby|GqZp))&8tUi|D&2@gNCV+7e*d`abu-lpZTC>LE2jlE4G59lk&7(CL`>PF#$uRde#X%2lR(;O9SY)lGHmZ+5*k z{H0!P?|DAp_WqBx>DJqEU-0!ulLl7)H7cxr(e%;&fApSo+l~Q=-M@%PY5wKi^E%}A zSYB&x&x}elZeD+5LhBD2PriOp;N6uLcN<^#g%-A^FLxZ+@94x9{qy46js5%nt|QMR z-!*?v*mW~L9$ziy=K=oHzV27|n@&G`_HE$4ZM$23^23hyyT3VAKmYJAO@2FZw#J!) zOV<_sy=u<8PrqS*f61n)Z$G$U!ipzf8SmKo)QHD7EFAh`#^ZfoSWyw4xE4flBZ#6Y zh@u0CqAiG`7l@)0h#~?+5e}jl0;1>xqDTQz%m-0S08zw)C^A75n?Mw=gDBntQ7i*d zya1wj6h!d=h$0_EaS%jt8AS0Xh~i@q#aMO6?*LlDIcAd1}}ifj+o6vsgnr$H1K zKork_DAGX`i$D}lfG9o$QM?PHcmqW7Dv077h~g56A`e7y3`FrAh+-dz;&TwiP7uZ0 zAd1&O6j>mO^&pA`Ac{vo6wiVvUI9_`1yKwJQG|gg#)2rOfGDCt6!(EBW`ihh0#Vcl zQTT!=s(>gugD84}C|ZFiI)W%32T?o(qF4%|aDph7gD6&mC^mv9HiIY*fGB~5Ac~71ieEq!zk?{g2T|mJDE5FTJ^@jz1yQU7QM?bLcn3tW5JZs% zqIeEO@iK^_ABbWQh+-IsVho64Du^NqL@^IUF$+Y|3`9{6L~#v>qB4l03y2~RM9~^V zaVv;oF^J+}5XFliil;ynE)c~U5XE~SiY*|DuRs((gDAFxC_V*I6oM$uf+$XcD1HM` z+zz7X0itLRqG%4H@B>ja22oT8QPc)eOaxIRf+&(e6mvinp&*J75XC(pijg3SN+61w zAc_VciY6e6TR;?TKoqxuD6Alg(IAT9Ac~3{iZ~F(IuOMNAc|EW ziZ?+NFM%kY2T?o*qHusHj)EwD1yK}%DE;O@G0iyU4M3D=kmQPc%dd;%N}Y5)j3MAc`kJ6k9Vljx~0T9LWAd00RicKJj_dpcOK@@L-D4qmSEC5kF2ck#^QG5xa z_z6VuDTv}@5XBJ?#qS`BOCX8@5XDpw#Uv2L3=qYAAc{y3#c&Ws9}q<-h@uLJ;yMsT zLl8wh5Je9VMK2J=Eg%XDh+-OuA__z?8$>Y|L@^pfF#<#p0-_iKqNoO<@C8vc15w-n zqUZ#oxE(}sGl-%Mh++$fA`?Wh3PiCQMDYlS;z1C_Ga!nWK@3{iWCsV91z7A5XC4Eg$+b8 z7)0?Mh~gU%MK*|H4~XIC^A44uYo8Y0#Q5$qF4r^cnU;O z6GTx1MBxXbXbPgZ6GYJkM9~UF(GEm00Ys4qqDTc%%mh)~4Wbweq8J3C2m(<=gD4U} z6!(HCW`QV1f+!+D6hlE2!61rjKonI$6m>xqH-RYb08v;$6m3Bi?LidlKopxn6l*{f zuY)KSfhf{I6t93No(55T3!?Z6MDY=b;tLSP2@pjdh~hkm;sS_bBZ%Sy5XD;{3KxiC zA&BA$5XBM@#j_xapFtG+K@>Yc6uUqa$3PT^K@_J!6c<4hlR*?yKos*p6m}3rIEdmN z5Ji6wMQ;$r^&pDMAd31R3V#sAZ6J#7Ad2Q7iVh%(S|Ex_Ac`A76pcX?fgp-*Ac__s zijE+Pi6Dx25XJoHs#h++VUq92Ij2N1rWJFbK5Xad=B17t@aWJh<%j#iKz?IAnt zkRA6!b|gS{On~eNh3x1H*)amLV+>?R9%RQ!$c~GU9cLgrav?juhV1wlvg0$z4ku*C z%a9$5Av+d8c4RVUQh>kR3B2JMM+-h==T$4B2r9WJedsj^>aZ z9U(iaL3UgV+0hWPqXA^cEXa;j$c`zH9TOothCp`MAUlRbc8r7Us1DiT3)#^KvZEek z$DNQJR>+PPkR2T$JD!K^NQdlr6td$%$d0!mJ6w<*??85JhU_>D*^v*~aRIX956F(6 zAUkp(JGMi1d=A+W1lchZvSU1CM>u519LSE@kR7p*9aAAYIze{a1=(>6WJgQLj%y%0 zYCv|>hwNw!*|8k5V=ZLI7RZkEkR3}PJ6?e7SOnSe7-Yvj$c~>OJN7_!d<5BX6td$8 zWXGS79e+c1ya?IxEM&(+kR54|9j`)myb0N{6|y4}vg3Eijzf?g=O8-@Av^X%cKiU@ z@dac@He| z*{t!ikp9j{cAxV<9_6LUzoD?3e-B5d+yV4YK1K z$c}FzJ9a~M?11bz1=;ZnWXD;^j!Tdos~|hxfb7@=*|7n#;}yt`ryx5PLUufUwLC#x zP5*)Vm%562pW2=pk=mXbjvAiYk(!cPmO6;qi+YE8m%54`05vW(D18HJAL?8B1=O-y z`&0i>n^AL7?@`ZFH&fTrW1udjR-{)!AAvfIo&Ys3{So>I)LPV%^a$vm(5s-vrKYE! zK|M&HgPN5(oxT9|FMS4Td+KazO8Oww_0(|GbMywN%jpSFSJPvm-lS%xuRv`|Z-M>+ z^)EF!{Q`Of^fBmFQ2S9oQWH~?(ubg5L%)N51vNMIJvBPL0P1^cSZZ%xGwOe8Xlh-0 zLe!Yltn@kP8&Pjlhtor$heUl$&xU>v{Q~M}`Y!a2=s8h)Q^!-2(|@8DMIVWN1N{#A zHuM+hG0~@?=R#kEI+~i89s{*6wKz37^)NjE>Sy{P^daaO&=;Y{L`_ZqfF2Qj4(e{| zV|qo@+VrRBpHQ3AW1$B`eNF$0J`24o`cd=<=!?*Uq0d17hMpLG3VL4j7wC6UZ_^8+ z-$eh2z5=}hdNTCB=!?)7pbtS!PQQl!0{tRtd3t2@3+RK;-=ZHwUyj}ceJ^?+^xo*h z(PyG(Mo))6f%cc^Ptoh4k3uhw{s{dn`grux=r_sqLu|sqLxZsNty{sVS*tse`D!sCTG$sjKJ#P~%dA z(l?;?p}vI-h@_U)+MoK5+KifudXIXZx|zC`9s_kLwIaO=`Uuov^aQAR>5tGypw^<6 zq(?yigkA+TE;T*<4C+Dp9Mr7T>GTDtf9W$&+f!##Q_=^auBV2ho})KFT~1Gcx|$vf z^(HkleFbV$dJFUqsDG)+=@-x=ppQYXg4&Pzk(!vAls*Lg8u}gdE2z1t@2S!01>kLa zO=?(bZ(cL%e`;uIU3x;)nAEKFIp`ZvZ&QcUL!pO6eN4}Weh>Wu>S+2d^p5B`QF~Lz zQV2Sj~M|B5~fy({`r^a$vS(1W4RK>voG z7<~$QUi25}cTsQC3xbTih5iwJ1$qVaWaxd-7ojgeAA*{kehvKv`bE_8^vLKJ&O|45$h#Hfcl|Bc3BkFDHaC#{8kf@L8+0gHy zUqBsA--X^0Jtt~!>Ug}>ZbAQvUKD*K`VI6u=-bd=pvOd?hMo(35$b4aVtNeJzSQE> z^eO0h(O;n7MZHZgh<+3OBl-&T3h2qu`=T#GUw}RYH97qn z`U~`nsO9OA(J!D6LVt^X41GCz6ZF04eb9TO4@aMgo*6wI`UKivqCZ8ihdv6uIQk>> zv*_c|OQYXFe~5kzJskQS^l9iX(4V14LGO&d7kw9car7AIz0e<_FF|jG-Wok5`e5{Y z=xfmfq;E%Gk)9KM82VE5N9gg<`=Gx?-;n+ny)*iO^cm?>T`f;gSJQu>{-v&>-lw*w zMx?fT-Gl)YbG@s5hyZ=_^p1(p#W^K>bTiPQQR20euX5 z71VyzkJQA}r1T-^*U;~vUqQ`HeNT-}FM#@<8kX9d*Npm~8k$;{o)9%AH7k7%`bN~- z)Zz3{=pj)b)3c%9L%)DJn!XFYBYIBM-qi8b~82J}VfF;P>~KcGiMpM$!a`j}o3wKn}J`X|)p z^jPQtQD4))qR&F_ihdM50{SBKVCXZ@zo92apMstj{RR46)Z6re=r_?nqOU-&fSwG! zFZv?%1?WRilhd!Ezd*l;TAm&m{Q~+R^tb58(3hh(LEnqs2fa7?aP*nznbFgsPoVuJ z`cw3J=%dh!qd!7Fi#{H`H2Mwnhv>)9!=c|npN9Sd{TX@`^v>ve(RZO2M~{Kt3;hxL z67*K+t+pOHS58BZ8L zH)A~hpFXdWRH)n0$7b#5xXw4r)8!S-*XQ|}{QV{!uP8<>x?J>EQBjfe+4DsfoSc=e z(6&Tj`m5)Q3NWZ7$s_)W{8@5LJcHw$2QL>DNIB7g@{_>Dz=Ob7fxiGh03HQ?20Q}% z0m%Hrz_Y;PK-QC0hz;ve?M|Qr#+@lKZFP<;T zL?wmDyNJAVK+ksb9#?t3$0T1cZo&DYD4dtG@N&^EOO$M&~xXD96(2?Di64XdBft(8K90+2P*7^`Qthwo(D$VsLHbjDRd52 znBKUsC=BZohF>V(3|0RDP(kjRQ7VL)a4Y#%P9#?)j<9fBV8n+%7e-V}A%D@LZ z+4o$Naq;ux+{znYpi1+x35E)W2}TG;3C0O>{cuZF;NuWX6Lbou3%Ud|1TzJ*1g{pX z*Lct0)t>iX-v3!MkXf_z>u9U3%EPWNJ+4P#_fv64UGF?UfA3?R@6%M3XIn~-7qn32 z`{ye@D?U$N+~Bxe^auFOA4r~S0z3w65A=La8_zR4&X@aI$8AFl{d(P3hf2j4+p4(c zg4U4l zJQ%yRlyvz_<# zGWIX5oc=YsU%j8vcvYQ7Qkb->^ZlOi?sr^9+4CAK-#@PB)rE>UleySAuZvCk%@{X} z`~NGStASE(6O0oyTc1verwf|FlzHktwF{c%8OzgToVq-3rT08J-za;Y8p-#O>v;-5 zMVzNh?3{}x*O$KjEQtMod5bc9PrGBY_q^t>E_+@(%lDP*c@4v4aVB%Hb6%tTN}pH8 zxLMr)U-><$QhfEW*1O;P?^X9Bk?()Yt0>j*z3a~H-t`r%DSIBK+^XVw9wN{nN1l$I zWBs9=d9WdeTd0C7zK5cbjEBhaGy(GceH%Fr5Nr?RbI>aBUQ#aA{$t3L@#zY3&U(*} z-&~Z~z|M8@)eYYL_Cpyr#yq!i>(zKekEr~*?Yz(P%)Oe| z+0rka>!_`Js7m}Y%O2Mm`95`hRv1oWk20{c@0;s+_s=*k3v##xC@B7WZ8kX$6}(yq zG<;8YK?B`0RYP7m<7qG7SFO*=!D$>pE_RNm&}2Lo#JE`%6o2oaO^)?A;^f#a=n!-Y zx&*TYcL`oC*bU#eo!Ll_MAeYD&bQ2}Cdl_j>$BKzjz1kc$A5eMvae?Va=01iL6!dV z|1%8VXYIUM_fXZD^-kI2`mTqH>$Ade8b^|Wo#Vv$Aj+$CHnp<2i0J9t&dJ^!2g1k4pN_dEpkJz$Z%3A($rU z6igR%31$dp3jSM2H+=7K<`_Lt!b6Md*KK zGkm{srlJ342=IPR!_IqSqJP=^WkF6wwoJqKbQiSs?yu#8 zvip0%&|g0^&K}yav%fAwe^GQ*o6YdO)_#HB{mLq*U;E{JJ&*k3-0YVFJNvb=VcGMD zlnQPBHt%`L>FeF!xJ}-1W92o2R9yEr5DDyII(GK=VmbY_ActFkg5u}B99}hqNk8-n zjxpZjux>7U9NP`!VBa~8RP21+s&VP_j?h(YzQNw@XB+yLQ%?UH$@dZKdCo?w>`?}G z_Akn$e^$h}g()b0U%+v3bGZMn_NZ@!}*g2k+ zCgWj@o5lVAmFp%@%C8o(q#rszY=ZYV;}%dtjsvMzwPi|s zI@vnYyTAS)mfhbL{k;1dfr{AQEbQ!WlO{YW*~p9B7~^Jf|8G9;Hi?G{>UAfFR}FE} zPklnp!`|cc$u4`Gb3?tyX+uSx>nr77j#KyRYB5{-Q=GrVdptSijOT^{-s9oCay*&X zd2K%bm*cUa4sQCosiX4$kC1-p%rL{aGPad{oqjir%YuqHE(dmw%eQIS>k%pcE1Pwo z_c&~;y|15hyLa5!sTT4*teWp4kie0pW9K-X<&4vY9B%shRP?@zGkg!MWvzGr!#*mz z|GfsQxbDARe@^s?{r|jz{pVP&W^+ipIydYK?|%D!Tz0>Q5Ap7ICsf3F*Zsclrn1+U zMH&teyjnM!kEt18SCbXHTx&gu#+H53*II(*gfmG#@MEb=HR*dgme zCU8(Q@9XT5TI$P*hWRKp>0cDSDD%7QD%**A{-XQ$_(EU0SX6*^pT~Lp`BUx(7mMup zQA0Y8`TKIIpIvnS9$?O%i|*eK4ERZ*W$(qJFq{{$?_!Y)Sn#F7^aHBg`3>qpdEoa7 zZLeJ{%ENJCo;u(9?!}@U9H;-Hj`QBUSmc9t(+;X*=OKkzhfy!e!%nDt|EibV$F^FR z-1P@suh4PBrJ@|o}U6a4jrfRY$2+?EIGFKRe6EqRov%pRewOF97ick?V|b<)>EBd zDCLf570*4Z=F2rf9p_(E_<3A6^e=3p#0630-qNOAa?i8%u}kjXQ_Xr(<>~mL zc=h`;$ASF0;u$&CaeaJ2;y##9{=SVRP0f?eGef7z_r00r8_UB+${xml(D{UBCPn)ciWr6{gKm*FA5EI*xnMd;SX-sr6-D zs>*W({U)h$f0uXuzwD;z>8=Ftc{WY_UkW(qtNvK$DGa;+|E&J~FHOUL&HOh5|INTZ zn1MRYvn%1N8eG11{!6Q64-5~n``P`6hv!v?ms$2 zV(wCoLHA&I5PKl~3dZ>X_-C>Ek3b(wA{_^{#lFb>5Z!&;Bo9(zu9YbPN1PTDqF|A zv7|j?oh9v;ykd^`(Ur$nTaRb2uBI2}`Nkd@d%$D!92HS>@0sOUe&zW(Q)5Y+WtUtT zH5*synI)wquS%=IJL-9)USF|Bq8bk5O1(a01aE0BYkzwvZsB0w)TRD2kCdLz(%|8} zJ?f7lMO5$~yYFYuTu{lLQ^oG6QruTZrQ(=T@PDv9t~e5fdrc2B zu=rJ2@vH2T>IzC;M%hbpvr38!Dq&#Ypzs03=Uc-26~8WNHNE7Vl1`R{JsP!Rkm#SA z93qNq%BWWSGPL-WwfI#@8D}P(z<9pau|*CI9uN{4GAJlKJhD~fknlc9Nr_25!;-QWR&rhu z95Qp-gxDk>hyRtK@RX$Z>63jNc~FV&t&;PGE6yJ}VM=UFif585vx=+W8eQGsJ|luk zx>B5-R>|qwRmF*{$ixX#Vj^Rw*;D33#ze=&#rin1k6xArQIRV@t&%IJipx=Dqsvuk zqsxgsr^ZItu1Xs>ZQQ!imB+Hm8(rDJT|M zk4}k+i<~htc4n+kQoj2V;F^RaPLD~7O^NN7kT@YaAvhs1W~$GOjH%9`NNh22QS(KKc*`(IVCz~Dsv(y&x}r*=;O3aoRcsS#WN>FPKcjAkykUjlCz#I zG9)-?;;h)Dl=$S>X|dB&dPk>3hsP$(ijRpMIkJE6B|dR_P(niD?A|l&3Gp$}DY5QTk?*z8j3@gf6>HnyoHBB{`vQ4p+0|5FYDPp)#x*EDzkhOAY|^yo z>6l2*VoY{OLUeL+X=PzECtzL;k?{DrvHhn9$EO%i88OEmYsh6$pOElAAz?}J(_)85 zPoJ1L%`?UG6t7;m54a9w0C*XcFgY^FLYzx<{cqY^c zd&f?So|#ZQ%fn;Q`1IkilYE>FaG#8sm=HD#cY^2ojvO<6HYUd37TGEp--|MHLU=50 z%;_=sHii)iK8^ythWBDY4*?K zm>fP=kG?x63mr?<1wCXy;UkPC$(^j>u_;)Du@jP_i>I##8USr2moyQGsZQig7T#A^ z5!j#CA|)}Yq}D)O!MmdqX2yn()>%CVN8^g7%tUvl=(6CUqwe-`II6fZ>bue_Z*V5% zK2%9P!&)T=$9L}sEQrB!yNS8`=ma-lG% zvde+P$}U$`Mt4#0@3_Rcs{w(s^h7I=MDeQuEcW@#S0vwPQ1p6c#%~pyD}=x z;d8ZBa(M8SYcn!@Jph0Jv%fyInF(`U6W&DCx&;9k4!14FSKhM!d>I1 zv(4^IjZM0Hu2)7+W~gfuKWlPvPeO}(5*j{i!~|)*|KMo-YEEju@Py>SZo0%w3^d%w zk>LZ2`#i84ABU;kC&W%lOo~;DblBXW-k$xCoXEh$Nt2ReQ-bGMdnCk9!(BZw#H!B- zpB&UDGCV%0kH-kFI8P^|`tW$q#FDk^)we*rHvpx^#CDyOlsF9+Cp=zP5$WAhPxOA8 z`wo+l%&`Vrht2hx&Vj|#HW2rSp0+`qCMU+v37?P}nVQmfOz|8K>XhJFJVmC~P^{O+ zpw5$HJ=06d6THfctLf}rUYuXt#X%ldc1ZD+9o9M4t3G|+u;TN=he%Ju!$Xrtg%ux+ z@I07PvNpn#J9itDn4FvdN>+4@w_WZxM0o6boRi$8Yor%*2hWU8NQs~BMe&~b-8z+; zUp9}HR4}4b=V{SXV>Mm5ujZVRn`Z=Wu$V;q9CQ}EoRZwBb36zuJ~|NGWsm68b0*&n;#nL&4G+p!d5yYxeA4mrju}ctRvj<5_s?o7`u{OuWOwqzbKL$%Rk0_QoRh7*&_fv+=f~ zq@i#yH6Hr?Ck4%lj!)p(b7oA8j0~Ub{(rb<;{zl53{3E-s(22O~o*DLS#zJq>$o!XmoMCV>)$;oEDut z71t(c;>0I3eTL6X04F+p6P3kS@Ge6N>*!p_?VJg zDn2~bGcwmBlH9pVh69XO~rI2%)w>gqQDgh zpF12c5@vc_i7B2>^vLi*#mm7EnBozbrr!gUoa?m$rWDV~l;lo_z0Tn`3Ul8_o^R3Q;Vl# zDju)JV@eKBRZR}J&kdhGCn&g|ZfJPQTs$v>BIS+W@DX#968flNc8jL03hEpTt`Y{H z`j0A-hoM(Z37xEXs3xVjpO$W3^|-AQuDAvX#n&LAvo&%OXsAzgQo$vQ-2)vu=?VgNk3D=c z=&O$x3n$=Fr?`7ibh4VJ(#{USN$#`zdY`TO6Q1CCn_S`aVl2ewZc9@mj*TMjlHfCcfldbb`mzQ_oLKd{Xh#YkKhmWI7)p z191ZmpBp|#->!DtuEp=L-5I<^%g#tBDs8`_ArOL-W4>QTF!p{L0gxdFGjCX1fCe%-Tu@kHv+Cg$sZ} z^ox6_6xzgMoZEsnu_R`%&LXM0yG*77iGnL2MeuHc%R77u)mT@q{T=e)fn*3@rkTfd?0{f2g8qPuu;$;HW% z*y8>aE9?`y+B#b>AFgX{n%TS%(@sohVs=x@Ni9vt#Ki8!cAed@xVAlzb@nWg3LA5; zmIY8frn$Wh>uPCnltjNHX*-6h2t zUh)?Wm|X|Gb4j6JElD0)>{nP6D)cd|R~5b&#^5Cb&vT2~-6o}Tll^2p5cQeJV&%(R zdnK_J+&p_4)7dk$=i*0?wXz^PJpvOlOiXI&_(dC*Vk+hOtLH$`S2@|0Zf?gyNS`sK zmujqo7c;09>A=CMrI#8mT`}A1z%3%Ily5|@TGu#Abh`)iS=-UQaA7l66z5KAnKus? zxENyLx^;jwRE!tj$$o6Q2ehf`YSr`(NUWdmfENqtBYUU2Y zRHNBhH)TLy7_!<#ggHt+RSE=)nK`5b})DBi1i~Y3|oC=GI(_s=4bs)-ijIS=bC$? z!bB|Hch=DFrMnbfpCyR?H7nBnooolt?fBukl}j)KSzL0K>fdE)yRT`O)MCa^OzF6A zR$n+pR8-&wS#y(F+DAo6U1EBK75AdXKua@)LLG4NCJ~D@HFwNyZ!!0QlgZ-w8YjYr zUhSrD(gyCL#i$3?N!V45avN-ty%;N!gcd)Qo^q8FqP$u}Lqs+!4Ngz|k zsBU5d?(H=+&Y8faXDq)4GnI~wdg!nl=TzXnW50Ls;Di&HjW1IbGrO_Htb~nAXLA#C zW7*xfhaZ&RjkyTsVI37Uy4pCYc}~~-K1+_s5!XV$M==qrZW0fZ2595sd*0LS?-pyJ z^nQRY$`DfvS&D6%EN!}Ja=(q{2YCvN`!*ijw8i ziaGcJ%881YnA2CW*t*jtLqlcHVjG}+@(yz$`v1x*Vb|dNYHnONHBT{x**vA+()=&o z&V{=HdZk2EDB1tct#s7b_#W*CzJl&qWhN4Zf>2DvY8&P^cTUDsvIz}_JGr`#T9BMy za$cuy74GEVo_5LYoeoMSG+;XjP6$25ZpvyKx-gHO+B&bzxGkwcRX8%qi3?VdI;$&- zXB2YB_^N(yg+aSyw?lD;Q#HLAjc!Ka#6+GR#G+!Ryu^$bMZ62#QPt}riOjXE!)BJO zUj@1%!z$JZ1Idc_lsl@9K=Nx!@~T`&q#|y+1ot2Vi-9ilQ#n>(;>Q!IjNaTlwe z9k>tp2RRel@fF3S8spM>3Icj~heChTuj1S+u=;PScLLk@jB4G4QcPGMNrzq0|6SC^ zi4!<36br4kzD-W(nC29^NHGXA6g>;;Zi3Po%0NoEp@hwmJ(^by(>6J+wD^PAi(|o;>W6DV9bdC{ehzx!Bygl)JFK(pS{QwwPc9 zsx5}%qGSSh-~{6CG#gNNXW@(NgITo;R&{%9$ZMF@S&v)R4ar3<^E$cTv)%vSZIM}C z_P^O5W0F(4@3g-pWxV39O6(iOZdCkRI@H0A9S7TS9BjaGuyqIF__qPy9sFHZu6o#B znf38cY~;J>nN2z{AM9Y~C|u#6{9T2A;!f1$yM#$}!eTDpUHp^iaj3l%BZ} zp=&~VuiQFujciqHC`wDN3eZ0mGRVQn?jlj@^Bd1%bmuefDhFPj2ZZQ|@$C)>v6*2S>0 z)wT#*3MMaZp4%mR<>oe<5iYalYmFB1Qdb5S{c0{X^=m>--TE~dt1y>;t=Rm5Y|M_u zj&5mQfW`U3`E3Bbs)=2)Zifb&Xv1P>_Y7=QG51+z>10y(;)aGp>ZUAQU{+0jsEdJ< zCCe54dnvIgex23P!AZ%?jwN*yXLdBmt!wNdYEH*ut&Od1Sj=pbTf!Z|NwT5y=*Gja z>faT_GryvuaZzInb}=r{I~B<3EbI{J=`KNGxINL|#fe5to3@MX zxpESkyPWwmOJ6Otss5CTtK6|tbJ@^cSY+x)Vn#S@&+TKA{ApcX;kKphj44$qUE`YA zjXmsj6N70RD%xzG!SJu0DQ4GCG2RU4CFv0G3oV;ht;(U+w_PTnk;o^-W?L)ucwgTI-bt8Sp)YiKCWb$}(mKW>D_gYJz zu-eD=qc^^xL8>oU$f=qmMOD3^xpjW$@rY%1a=z?3n>!EtFRk|I_dCFSNb!(7NoG=F zv&Z+_OlZ*f>pyH`!@rVn(sH!GKlw8)b<;TwKwa{1@vCzyscWFBd9Ny^PvOU zZfpZzU43Eu+HCIN3mT&A-;)d{26T)q>DZfsW~sM5>NOKb4X9t+Fb6xY=Qq!4E1nXH zS?M;hr3SX1gGXJeD|OFslP3QH%F9kZF4;|Fp-zPbUo zpfQ$Wb5&bwNzZSg>g#X8U; z%!IyQv!S99y9MgC17JnpYF|2_Rd-OQ$rfzP5M5^g-R9Y`3D}{Dhdny+a8BcbWQ*L- zN;WYE%LX*7i1jgx)lRUJP1VwK#HK0?C z)C+yjG$~P6H@W9#VadyyA7VDpzI1Vr`ymc`Zd(_#bs_US3HIdI%KdOYEK<6`;Fww1 z8*R1c1I3D1PsK!IC#t@+_nv-pv)x#(XNe^zm7awrV|l2*-W{tzuPodxsMk*J_wV8d zR$~&gvJ)E)Nw)R!9aQNCW^GEP zGQliUVludRqbvJU)S(lYVL4DA2`N0nP%Ob^1*MjbDYBiqxfpMjvR=F8O`4V$WWBe{ zTkUQj>$O4N7_KS^d+vreLR^TLiN@g_lY8vYH_f;x>*?1t(Gp<~zosEl*n1mS;BaH=SJ4BCv}zt5WBHrDLQuFiQib@jMUCb`@2ed-*? z%d}{b%`Th@+UMfb)RatWHkKBIl@0RLh1|wA_iws!HtRTE&n-?tsYcFEvJJGkNzO?} z%$iaoiZcsi`ypzvEU?(v=#mYTs>}^lTrDAcvFaJ-u@h{QNVZ_VQnDNSxXp=cc|pCf zyHZNQEd2(UNjqzKVZj(TtAzV3i62O31-(#;iMw}y=KL{B$G6i?V*yG z_5B!E2XW%=NUz6o3i)ZkEbGx)A-PU2IHifA`P*2RnhQLiN@{Sc? z$vihF79K|`M2@Tn>Ccq2jbpQ0x*1o1t@F7Dw<1|OISJGns@fZyS{Bz9Iz&=7Gqxn> znEmu-Yl9Sv6X$OZSv5# zF8bgGLGUnBb5pEpA!uRO!urN^~V!miL@A1oePlGBvF5uxNVZ|NYep4G=H zaJho+rVCy*^I$2LF3Gv|Iz5^@*Zgh3$&(Xor(j#%j&-qx%{86Jx3?`qkL^COL3V6O z+LrZJLcf-0nMG@Hpp-2rX%Q?BxVYdSj59j_cMA$?uqxo*>vmP$vTTRPH+nAMnRPhq zkdqX81zYvCroaucsyRJZ^BR(KlcmU_@O?rDABicRsy6=csTgMl2gd*Rhi`EG`hW7)>j@m3LH8G$mzxbRkHeA$A)ULanUP~W>(X&(_=<`5`o}2S@mbI6jPnd}Hy1=?*$Er?1f4W2-GBFv< zQ^`DOf}S#XTQ03m=<`~X`Wo4hBCkoATq*k$>Lzl^?+@;CbEEXuhMd+1co1EZx#4@P zgB1kUrWrvpL$r6DsKeY+Vu#Mk2AoDafnImA-)YS<$~(<4Q8-cI5i9KDFvXP}!qZcC zkJD3yjTznooEovJHg|4UyV>j9fxX$f|CdW~nBK_?I+Eu34Sd)QSenBk059R%7N#59 zn}b!k9@DPme7WSn`O<+s_N=MdMa!=u`iP6tGjU<2)jBua4M{; z)74YCzm8R!;>BD8W}9a8b6FNY^br*8E`d?S08d;PEw7+8z+)FiYfV9`=d%|^mqhqo<+W2N>=^{%5^B5kZmiuvsbai&juEf@^McsH*%G8$===9q2T-e|o zv$63AwphhFzVBu_8`t6Tq|SnFs7$o$CSk(XQQY&;kUj*nCD{etkVa$V6kyr+#i`vh zJAj%>mlve6{#1B~x@7aTDP6aq#xl^QXWX3Wzzvq>Cb=vvz2w)k$*RDr?>1+R-3t`@ zKBAVe$D@TzwB=p}mj>4qv>Wh_AbDj|Tk8}&t%SGfG&EGsYgy1-i6@tutLDiay5RmK zc3I%1Ja`&e>kc;)l68kByY#*!HU(*a%Wcf{_d4w5Y+c~2pZ(cAH&&an%@@?MQFv}! zqiMfK;w>{+n3-KTF$VW+)^AL^TlS{~OX+@5v$)V1+_I_(E;wrD@~WZ^4~NO>W#MXK z1MLUgI326PLnYWwH+5bD({?;`)*uh4VEd7IfDliqA7=VSW|(%r0sZjRD@E&M!FK6? zZ9Au6>-^WYEd|?U|E;Y#t02dC#{fMVNG`-Jd1L1NaI?amfV#;A z^EKaZj`>+#=VZKLN*+2kaprm(1*@XPa$?((;=-LHyeDMFJo5q#yx2!CeG7>RCLA+6 zO$BNU>wa(yX!OaTEb{+_RU!Vsczs~Jk?s0AdisH8HJ;&ZTF^45p`~L+ayI7}ormKU ze4X7BTVf3p7vcYji*%^l5Lj(&1NlaGv755b3}>&NfXL;nSg$jvBjxeAg>4J;%>WIx zxZNPnwYAPq&cWNnO3$DTb(3T}{~@tzHEro=Yvr~WP3h9%W=Y}y&;AZMlRH70YZ?Z4 zCPVJg@^7`PG-O~&4#I%g?U1n_04XhEY zvlzW~z4U4u=HbC>ysHO$vGsaCPmSOmEI(|7Ti?g3x=V-5!VrKqR@HkL#XJhjA=<_L zz=htxZ^yF^8*xz>VZ;SJZ0PNwRt6jMaM1)ad{6A|81Uq0MkBK}x3HnJWX`9j5lv!d zg!Z-Kj4&ZfqP?Ctk{VmuuV%jwZ-}}Rs5f+C6W(-ea%!l>TZ$Io_N=)dls+n5xFlIN z0xyQddm-_J8(wLY?w%&sqUhJ+CrcU5{UVYF8QM|3Gn>;oF);hDL~(gfMd$}_PSl<+ zI&M!LeeWYQMYgI$){aGezQ&PKueVg@wB~J#V!NidRE8?q#v{U9QHTMwWgez5C8p~r z)mJJ?7R}};G0cy^8%-M;=E&1(!t0fBdxY;Fl^3Rnz&8T(7Si_S`M7_A_YBF}sN4~0 zXl!a~!274>S#CImU}}W)sBUIH#>0uXsfLZ-ST4;z96^ z4)o?uvu(Mto&^2bz+v5Yh622mu(2MNX2?<1638zR}zN75mE&UBW{ zNJ&U(jIvc!td^Eaq!D6zA-hRL=9J17cHzll?Cvh4WLaNnkd$m+QBYvZ`-)16)9ouQ zmgcHHLTq7aFHMryzebR(HT{dxA7r?e9Op_k+83FYP?F_!{fGnS`F>>WO+mKT_ajBV ziwb`K3X9qU4;%VXD3(oTR7nLh;YHh}rBYN(7@i(TRJ~k9p%>ASw z>$0GtBWnaRbS+((@&xz%8qCISiDc;j3PB@uB8BQ{(ke9rE#3xUwik$tWqnkNRh8`{ zOW?g`cnM@5FUyMwY0@_$*UiO{i_RDNmDRhNy55Y8yB|B zt><95re8_n^pfjWj2zb&RMz#Yf+?;%vtYE2DBUnB`N|hfaKvbDPo7Tk$$ki8?d7P{Td6<*APnwWU4OCgX)U zcw;y=dE#lEL?g~#jZN%>;?wD=yjUhvXnp#I>7bE{;<6r!^iZmh?V(U8=2DgAy;X2I zD~T8XZV#Cz7Y`Seny>1iG7B$ccALJ#bBJFCI#aNuZUKaNO1$GE;w6xJ;P}x ziCurjZxN41v9Fj4%T{;_Ve!m!+lr(zDlPSJGfv?Jf2yypP6zNd;@pp@<= z;KMbNZoju?kkt*n1o$b3;IuKONBV+6*i>OJk-qh3fT*2b$~Y6@npE5@8&hZ{U3h#* zmZ0!7m-&egNVBCj2iZ(M~-iF4%Yp^7WUq}B+WIlL(m1KD3+H;dBE|Iz zLV1K5tdr~Tz1+%wIYvIekk93}ZfjZL`PQiPwAt1cRybCPvTo7Gt#D=C9II+-mS55+ zT*KSd3)|-4M$Pe4ZQM0aHk97SwWrv#v7+30nB3nQhUf6DZObiZgT!+)<5?u}{JPxA zm^7?p=s6(?z93X?xhDL6hF@#KZwguAUa1h@mxMGWg``Q~ijY+nn=5yg4#Pb)mBXQuH&mC5FXD%tQfllwxP1<7?`Wa_t@ z!xo!d@pwZ^lXY{LZ~De-)#X*^$5?-dk^`l3Ynh46HQ!e=w-=O2DO^$pM;D9Erw?ui zca7FfWv$i>=~LQ)P9I`g`H*t!8>pem9}?y9Y+X}iqSjexe)kT+Mj+GdwCTzWr6Ba+ z!~N41@Zp)yy!l+q$j=-qkvl^nyOP;GXr zp|ezc4UJik4Jm9l3EKR3Lk4V#rw;Ae>@FTU&AN5ybZgbnr1j*`(q{J>;&88#)Sb%I zdBa+*$A+QRd~1rjS}SUjZCyL0(Ek1oe`|+Lw_X}%g{PNP?`-Si!CH@6v9qn$;3;#H zRLQ5eYn5b&OQ~Ep994CrsW67GGT{#nM@>v!C_j$Vf|&!}6N9_E*3HAKg0RW0GNF?@ zUDj&&$QvIY(#JQ($0;LFwkCW%!!H~masF`xhA=BPysF@L=?MIuMZsSdc6pQ5v+vNf zt~GYgi$4>-l;Llg@b?k!nebB?{*4JgWfLo0jKl8{$I?x#vdTs*X-%|l9#K7~s}pnL ziKU5HH=-7+Or7!|O4CH^!cEW^7 zXj7|fLK-vAWLj=Wm1O#ZO=^nale+W-C1w8GO=~rIN0^1g5|c|eMVm2^WEjb(CX%lZ z?yQnJ&99cvw;s~=e*VZ-YuQK)u%AeK_awnXY|GswW?jE&MNA4K(O=3kBYB6ipC2Bv z&K^0twwB0q@|jz$Rd}vB0bexA3Y({^%#ybm3%JMjj8QTe zTsjI#H`afl-Q&jYX@uuqG+rOk%)BwG)p{GD{+UsXL^W99#rxbBHe1(^D*6|XFN~UI zeK2ae^%-K;kt2zh0+W@^g!X zJ4SjxrEeSQ2ax)=i}ZeW-fttV)^A5+Q2CD(wIkYtV-+23^E&YgGjnw%Rr^9@BPIJr zWCHhMNj5%?Ota1yJ>9xsG|TxCcwdPsL`qG|le@>QdKe9+_iR@Bn=jT=o1w~0KVQR^_RVIk)+uAqIzKii zbht!>#<8BzmyOYp_3|;+keK!D=ssiWEt?HErrxnxt@ZL|)2yXqrd#KaNm|z+9_I?l z%z7sMt1*)F%;u;v6Yewo{LLkN8NzcW{6mJ{Xu@5DyVr}Ko0*G;H*dApAk^_O0uRQs zCo`$_o<)|HW}BpVBFq|COi7>&EoTF2O`ZXC|GUPt=AL6<;NyJ%;8 z=3m@8ga`V++X6F#)zVXbVV%0=iPpJWmRn~Fm*Hg)8@5Q;vH`GpvMsMvm9suxL57EN z>g+mfMJmZ29{n|MG_Wq(67OrfVoOY)tvk1T`RL;_eO0+ zzuQWR{H(1|h&dDftbDG46iLN*t9+XEr>*8&R~x+>w(78MgKp*-(emiy2_t(}!k;tY z#?xB$f$!quP55}%==~Eu{=Jn|hTofzpB%$nr(RyCg)VgGRyxNH`oEd&=#XG$J1=h4 z);_$o1b)FZgYsx97C4}$d>9^a=x6ar`Je|8uhjr05R=6FP0J7CnMxrmamcdi*MoBg< z-3IZPnp({mo;H>*AUyw1iQ#O{jo;p;)%pOT-Urgrmx?wfNgt1`#Db!6_1xAQ8RFjF zy2iR~o1WwKE89%7KHg@!_4PI!=uXBZR^|)ommhLU``2wH8+nB1%{==phJRwhHz3?M z;p-WG=60g*Y-fdS{H6q!__WezmgN7tZCg;^Cs`M7hte~V<&29wT|8}EyZ{$?{dhk< zDq5Oi<8cN(zHr@yb6ZOTeoc#~x5u{=_piXc|CJf5IHA67`&R4b?GfoW7-I(Y@*#Ec z&bAfSRom4Bm1VuX-8Ad=?WbG!!)WC_(vLjzxypRrY(DSDC$6io-3HSLGw#=$Ym49R zfb~!OI*?u&Y1kP%pwEhaIbOluu~2>iqQv5h?JHW_68Ig&7W~E{UhZ30p;q5+KOUD8 z_13vN;04NNR*qF|R5|V#7j*7{XV;`>x%s@td|qZgotLB#T=VI#(y?O2j#5o`?`W`ZA20b`1C=>wz87&R-LI&(pcU2RpV}A0u?>=h6x{+%2V&GoP!(cbT4aPLJwI z=bY%#W~OpM)EaJAU?+uKZ`Cc3JBQu%SZc?7uX{!(78vU7LS8=JK4v|%!}wUg%5rB^ z1qJ;JcC4J!h1bLc<#ox9dR{05T(RSXjxO`lm4%>dcPzZ|%X(tRY1S7zPPa~uCap`N zI3=0fxSA*Pxe}ka8pU$b@oin5GI1+7dUdA?P0oz=9^r59Bu%ucy<=T(V-+okXU1NM^ zjZbk|Nc&AYV`)|{?6jS&*csDR)y`o*E>(MZrEkIb;mAA>#1FE9Wo<$#}D_9S$9P7rZ&F!r_gz@rtmhB z_33?*px4ajI`jD!KG8+fg$X)h)dhnmca7n9B28D<9;(5)UC{^vLCM_jrClfBDFV3@ zv7kGsqJpp2c15T9n-o;eeEKHt56$NW^ZAXWqfB}XrqBhub-PKzN<&`X4Lg+NZcjny zt=&)w#)ofwuM|&MxLCfsRN}3>WBz7BdQ2@>?yfDl)U^jy=RHZ}hM@oNj{c9(WgDb6 zPrcU^9>$sALjLqU*z@bw~ zYput2N59=2{dSL}b-^AO;mkPYGOHJildN7c4kNA!znS4TneY_|&%Yu0T58TZz1P+r z8P|3~p){X>vTu~nhB68yFNQ&xeq$V-vL_CtT8+=3 zpxiyRpzhk!8d70BJ8r;I@yAvFq7g6emsg}~d;5G`&!vu~drq^mdrr4*+%sw2k0>+m zNJ3r<`rlsYe|sVH3p2Hrb);+ekk>!re5F%c%#|n0T=|M|RVFl8vATO4eqKc;(=)7R z5XB99p^w3l|9hGJI=5^ov)^wJ;G8P~*#}L)IeViAiWxd9SJe8M?8;QvI%V&gV1j5K z6ze%l?8i!{$kqjWqdl5LR=sfoDP1f0K*6~-p1Ry-n6i!P{VOL0Fj)@O9+ zFCI~yGbLu13>Ic~Zk@i5^uCEWTm4{XCacSk!i-6wf0s$&%6-uZO+aSZR#K3UBEWH^ zATv*zfS2~Q293uIYNB=d-j&wX`&7+cfcL2Vf6vjq`&J_o{9M~a^AwWF7-H$~3dQ8) zseLg)(hX}!ORPdc*HFZ`&t;92RL#tS$!smi*O1+%=bMJ~?pTw58-t1|kldrDgkG|- zQeU{F#`(RkZ%vSm^mF=OXht=`CEdoZwXD|=XWk?tbG5madoqSACeyOArj=<}RYVgPjE>R9W1W)et zl0is;o-Mt zCVk-IJ9RwHK$l58&bjir;k2lHzi?}u199m*e!lgW@e=P}$9Guy@i;G9@7gizLwPBp zb?*4u(v|KG+*E3ATqw^nYu0+Kli~vG9mM7QUSjbxCTAMgsT$Y4mGdpHQsR27vcp+I?(>#pi*CcAGPd{{lfx_?5AwY;WQ+k8@f zPFx=bD=Cb(;POI~wAJQwskkq*b)f<+Rc@B*mYw36_U_u4xg5hzTWm(elQ%f6$?9bx z6A#o@bo7t}3pBXpR9Kh_?kGJ{D=S0N)ZEq5{8w{*^`ZS*tw;C6c(_!$-g4>ggJahF zH5JwqwKeEq<~5OpDDT;Cn)TFv)2$cxE4``lD(pSeU4k2CZ|WTZl zEo8jC69L{gV-cZqpXrNc9Q+20sz|~kl1T3X^vgkw*4q6STF>v_YOUM9&3b+RF6%8= zuDigTsgP8R9=D3UcMG(`ldQ83XtK^f0GE5#yZgqhuf|tcA68adm+p@t(R7}MSm`a* zSmgng~`%lXfqZJoYt>6yxUc>9Ug z9S7o)$9ikaM(f!Fk;{{@#1poyj}DC4cpx!>jSy(TSgo&}BU9HTb~e|_7P3XM?@3;? z5sdnW;FpIh>p?@NYJCmu6g zFd5!)1OEFw8?6dz1-96LU|!zS);=|f_mfYaK7sqyYa1HyrVv@~s$8((q=mH@xKUcz zA~ZQM#dsQDr8x;ap&{Tp4`%oH>j3)S=T|86n4YBi~s1u6VUMQ7FM4Ym8JXe+pd7-FRmd@Z^ zZ??SH5+A8}G-}5aPAC&fx#74oEbWwM!`_%o$Q|Z}{GqA*pnS+3oEhSU@`L=1e9H{7 zS9Q=Uj=LwIL)D1&4r^5JwQjK9A8&6Op*p_!0V zF6mACp;SKXl-t>|D6$m6-#BuVO55p(?Zd{#OP)jVbR79h$GuQQa*_{u<5FoSlp72; zq5M#!eQ>@!8_EqulJcQ!NKzM%CQw577PajN3LudQ#pB381`eXpOqrcRk-$F^UwTOT zaUjSm%Z4+9yfDn;(RgNXb}-5`k_qKPM#GdvG>+mxFa&bg5ijhQA>$}xXRtHOALb2l z%l+ZVSu|x!!n0v7oX6iNa+^m=(spL7jT9E$N@U^-k#FjTZFf*Q8U^GA`DJc-rpz1V z!A$avbRn7YzgKQ&@O~RP@O*wI8H8%m{6IK{&+!%H;fumk)d8$Z}>|8%@BDW{2ai4~1L^f1Gd>|3}@h z6ZQvZhd6`X5LA$RHzbaDAX;^7iqM8P^B z3N@9IQt(19(uuMU`yr%aXt79~uUK8S=`EB=|_D?05>{kw_f>;eh|R zI8WrlPMNe*r_7NkQ_%!MGsqxK?QAGp?w7l$hNz8np@<6QXsb@qYmQ#Co21+_H=G~p zg!5(D^1PID!C^Gzh9nZikE|eXhpN3Xetp&M7$9CoGBtHri2u^7&xJ58Vx8CPekJwXH4yw4~Wrn zPz0!LlRX=ZsEkq?wLHojmJ9hqyutahh(we^6Ojf1mkAFUjY}ZRkzrUxvLQra+X)0X z=<}htMx~#&MC^tA@*E7EvRo)TC>utjhG_&HY=j?jhPp#CgYv`N5h#p&DB_QV3^7F$ z$Q=fP6taMNMPvv{NaCZJazBg#A?=6#aCR_Sg>6UtFq(TRB`HJeb?|PiD0+|7fefTb z1{#JO5pS>`N_!Z;(B6joqjIB>vM_pVS$>O57-g9$OGQ)ZR5}3*H=Ic1%bdY>9LY_? z0Ar#%C?5B=&5dx!N^;%d`C;Dh>@aszH|M&Y%niy|N63ldO~?T9^!&;e0vt z;+ZY7Qk}>#0+Fn87=$p|<0Bu+4224Op?Rg`TOt)rqpVQ82t?N8uv2I{XiX@z2x=T< z3&oUCkEbJWgT|bKJPqAc3gzgc9e8DEvTalS6o8?AGtICJOG+&kt<-;<5<)j(8o5az^2T?f_l88;!hS5hcG@*7vnL*hy^pI$= zDNCQpqh)47h!F!kdh{?`>;|Jb#L*4Q{fILpUSbjThWdk$TIp+RF z4s;e|9z%Nyo)YkB4unfKQCxN$e^N#DNOm+t{!pl)$T9j2gCdFtIn506&>p-pe`wqf zC(^DAOkpo1^?)WE@-Ys<2wfKmkOqwehq9>6%wW_D4j1BVxt$MZH?<{dI7j0*itvHI znXu#}0trr2Ls6wRJg1;vhH)q1$jBDtO5)58!VrP;$531HCzf)cw`Wi(8O#B4AtW7n zE0{q?PAh?vT$w~hTX=%1sr7<}acDmBgVCl6iE{_r38Wy6^k*=DmAI62P5M%3lyHobe~>m?nr=dxu^+O%vix9Yq%#Dq zSWCnI@oy6Gl0?q1+I0 zhQIii!tgKz4P#zzF7He!`jMboG_P$Z5zLp@0> z(ppOn(}pkxWRXH2H6XQ@9h~rxG!!LLEY;(dXEBv7i%Tj@U^H8n4@KP&!X$sGXs#?C z$KZ=Brqc8)`ZawH zodGi`8M&c^#^R4ixtOg;uoFf}m0`{bbTB;mIRBz?VJNoI#H7h#@P~CC)AhK1CQQOW z=w5Q7z;%Z;;bP0$A(XLlQOg{+gGYueE3%Vv><=oBVE3&YU0{*tc2mBJZ0)Z6EcNr` z?*jQAD&KvX`g6z$u=vZ8yD86+uL|_Xsr~C@pZpm)zNgBEUqb)npMs5l^0k!Pd#irg zA5}j~J{m0gdGh;|yZfsC?=Dq+`^U;-FH`o(zX6MV#8$cWCza=7%4d_~70QvzRql~@ zCg;hs$v!zlj*eIRmE;upeR77p)fMXBA=i;}B@+&)3M@^)pP`~f-Fs`9JuP`THpeDq4{w<|~PR8F6y{5aWOr2Lz^R32HPTy?jy z^-JXs$@XuQuU@5c_hjW`?xFuvltIYB<2`Wf=sWS4v&IZu9p z96e3_{f8VU54}(0PmwFZru~thBRi+7ef#|?x0WieB4^0q2h?AVJOV8KtTR-9dvc2W zYjTeK2sv@4>OTjT{*xiUL(Y=Fp}t41d64Bvo<)wFrT&(Z)8tiPNneKiA99vF^&ype z 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∋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�mM!tT8seN!hr}QE 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Ʉ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

  • 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 Zkh00xS^i$eXkao*YOJK1xmfVx#j06RO;C) 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�Ejo5e&By=ATqGIzAgkWeb^ez& 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 z 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 diff --git a/TedeeLock.xcframework/ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo b/TedeeLock.xcframework/ios-arm64_x86_64-simulator/TedeeLock.framework/Modules/TedeeLock.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo index b679ccdf923e12bd855510660d50774775ccdd9f..e48e4c4d18f203174fca4e3eefe67b6867071229 100644 GIT binary patch delta 1160 zcmX|J(3^<&a$;3%G!xYB-YUgtiwt)JswQ84h*YNmQ+qOANi>v8wneqN|dK6~&1= zE}}*xV$_U5bX(kUQS7#EBD&A@wuw-pkI_V3l9&<2iS}5cCz5Ek;ik<*&m~bOiW8PN zqCx55xYw!%L8Fp*A&L{19i(L;xS|RV*^&BMP)MwX!11{TM$lrD%kDl4*u`an(Q9Rr|dA--b?)FPAxa^vl_nal#+V$z>~g{ls0Lz{RQAo)S< zW^xGBA;fpCfI5Y;LFw3*2WB!C^pGjy96bKq?pUH;@wwLl&{H!#0(vII_pXBaOwWoP z>t~YgY}ltECbbdCIGyG-Y&`m{IDaMQJe!j`f6-8UUa2dfc0zUO8;eE+cfymqj%}Qj z|A+!T22BZZO&@4li0}FdnlZg)&^saSG#UH*o=HzE{ZKvF(`@k^@ZNxO%(^MiezPtd zo11HTk)S-Lh@+_E?z%9dBjWQ{z6KST=`m0tlj066x;S8{gHQ$fLLg?1N4EtGf7Hqu F%Ri3BGjIR^ delta 1186 zcmX}qOH5Ni6b9haa&Jos1@S>?uTmjM0*QfQOe#S|B0dmAKwU^$DQyva!9o|hzz`FK zXb3tg#!W3EhJ^^$$IghlMFF2Nh#PfbtSMHjxKRH&CU?>1eErXvJDoe-@uco}(p96` zn|o%e*7;VLjWy<@h4VW{duJkz#tkb|D!iX|12(Nt3>8(Sq}~6_%qocdF3NVP_Clhl z7%#DjKA$4ozB1LYkjN`s&6*|0M09X5(SDJ!$ENP%YOK;`wAn={=HP*tPf@4sL_ORx z!4+E6jT%uO7ICVbONlOXdWrhmR|{hAW@wnF#xx>NixcIgN59)BFOW44B(ZupLC2}@+vqw$F(Kd;x3Y%pW5v_-OECt#OHM3BV2VZ{HIw%AMSZkmeD9EaZ zO7NH#mRzM2+Q;%kVW?HlhM_ho@vvMmsmQbK;(g3v!n>licJVjnu*fwk@fJ_X#Dl=91MK+>bD4 z>F8{N2K3HW=o(9|IS381wnB5zb-i;Q8j`XeM<)Mo18&tQ=W?$>XiV=u1l?xIb%&vd zo{d3wq~z`l_ryqCQ!~*uDW0N|XZA*XjcXQpCQI^&#`Vc%&?8ncvO4IolvVCVo}L@` zaf)*sEbW4(^;r+}oF&)20=>|)0q7-5?sgV>B_$@le^K4Iz15uAkTpOx`dlNlU7zcR zYV|Ax?O=H@XTqmgJV^Zir&VG$;WX5XKMBnupV*5RJ(3^<&a$;3%G!xYB-YUgtiwt)JswQ84h*YNmQ+qOANi>v8wneqN|dK6~&1= zE}}*xV$_U5bX(kUQS7#EBD&A@wuw-pkI_V3l9&<2iS}5cCz5Ek;ik<*&m~bOiW8PN zqCx55xYw!%L8Fp*A&L{19i(L;xS|RV*^&BMP)MwX!11{TM$lrD%kDl4*u`an(Q9Rr|dA--b?)FPAxa^vl_nal#+V$z>~g{ls0Lz{RQAo)S< zW^xGBA;fpCfI5Y;LFw3*2WB!C^pGjy96bKq?pUH;@wwLl&{H!#0(vII_pXBaOwWoP z>t~YgY}ltECbbdCIGyG-Y&`m{IDaMQJe!j`f6-8UUa2dfc0zUO8;eE+cfymqj%}Qj z|A+!T22BZZO&@4li0}FdnlZg)&^saSG#UH*o=HzE{ZKvF(`@k^@ZNxO%(^MiezPtd zo11HTk)S-Lh@+_E?z%9dBjWQ{z6KST=`m0tlj066x;S8{gHQ$fLLg?1N4EtGf7Hqu F%Ri3BGjIR^ delta 1186 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