Package Exports
- @wardenprotocol/protocol-kit
- @wardenprotocol/protocol-kit/dist/cjs/src/index.cjs
- @wardenprotocol/protocol-kit/dist/cjs/test-utils/index.cjs
- @wardenprotocol/protocol-kit/dist/esm/src/index.mjs
- @wardenprotocol/protocol-kit/dist/esm/test-utils/index.mjs
- @wardenprotocol/protocol-kit/dist/src/Safe.d.ts
- @wardenprotocol/protocol-kit/dist/src/Safe.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/SafeProvider.d.ts
- @wardenprotocol/protocol-kit/dist/src/SafeProvider.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/BaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/BaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandlerContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandlerContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/CompatibilityFallbackHandler/v1.4.1/CompatibilityFallbackHandlerContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/CompatibilityFallbackHandler/v1.4.1/CompatibilityFallbackHandlerContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/CreateCall/CreateCallBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/CreateCall/CreateCallBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/CreateCall/v1.3.0/CreateCallContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/CreateCall/v1.3.0/CreateCallContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/CreateCall/v1.4.1/CreateCallContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/CreateCall/v1.4.1/CreateCallContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/MultiSendBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/MultiSendBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/MultiSendCallOnlyBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/MultiSendCallOnlyBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.1.1/MultiSendContract_v1_1_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.1.1/MultiSendContract_v1_1_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.3.0/MultiSendCallOnlyContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.3.0/MultiSendCallOnlyContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.3.0/MultiSendContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.3.0/MultiSendContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.4.1/MultiSendCallOnlyContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.4.1/MultiSendCallOnlyContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.4.1/MultiSendContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/MultiSend/v1.4.1/MultiSendContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/SafeBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/SafeBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.0.0/SafeContract_v1_0_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.0.0/SafeContract_v1_0_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.1.1/SafeContract_v1_1_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.1.1/SafeContract_v1_1_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.2.0/SafeContract_v1_2_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.2.0/SafeContract_v1_2_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.3.0/SafeContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.3.0/SafeContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.4.1/SafeContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/Safe/v1.4.1/SafeContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/SafeProxyFactoryBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/SafeProxyFactoryBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.0.0/SafeProxyFactoryContract_v1_0_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.0.0/SafeProxyFactoryContract_v1_0_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.1.1/SafeProxyFactoryContract_v1_1_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.1.1/SafeProxyFactoryContract_v1_1_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.3.0/SafeProxyFactoryContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.3.0/SafeProxyFactoryContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.4.1/SafeProxyFactoryContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeProxyFactory/v1.4.1/SafeProxyFactoryContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSharedSigner/SafeWebAuthnSharedSignerBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSharedSigner/SafeWebAuthnSharedSignerBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSharedSigner/v0.2.1/SafeWebAuthnSharedSignerContract_v0_2_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSharedSigner/v0.2.1/SafeWebAuthnSharedSignerContract_v0_2_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSignerFactory/SafeWebAuthnSignerFactoryBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSignerFactory/SafeWebAuthnSignerFactoryBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSignerFactory/v0.2.1/SafeWebAuthnSignerFactoryContract_v0_2_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SafeWebAuthnSignerFactory/v0.2.1/SafeWebAuthnSignerFactoryContract_v0_2_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SignMessageLib/SignMessageLibBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SignMessageLib/SignMessageLibBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SignMessageLib/v1.4.1/SignMessageLibContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SignMessageLib/v1.4.1/SignMessageLibContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SimulateTxAccessor/SimulateTxAccessorBaseContract.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SimulateTxAccessor/SimulateTxAccessorBaseContract.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SimulateTxAccessor/v1.3.0/SimulateTxAccessorContract_v1_3_0.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SimulateTxAccessor/v1.3.0/SimulateTxAccessorContract_v1_3_0.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/SimulateTxAccessor/v1.4.1/SimulateTxAccessorContract_v1_4_1.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/SimulateTxAccessor/v1.4.1/SimulateTxAccessorContract_v1_4_1.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/config.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/config.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/constants.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/constants.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/contractInstances.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/contractInstances.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/safeDeploymentContracts.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/safeDeploymentContracts.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/contracts/utils.d.ts
- @wardenprotocol/protocol-kit/dist/src/contracts/utils.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/managers/contractManager.d.ts
- @wardenprotocol/protocol-kit/dist/src/managers/contractManager.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/managers/fallbackHandlerManager.d.ts
- @wardenprotocol/protocol-kit/dist/src/managers/fallbackHandlerManager.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/managers/guardManager.d.ts
- @wardenprotocol/protocol-kit/dist/src/managers/guardManager.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/managers/moduleManager.d.ts
- @wardenprotocol/protocol-kit/dist/src/managers/moduleManager.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/managers/ownerManager.d.ts
- @wardenprotocol/protocol-kit/dist/src/managers/ownerManager.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/types/contracts.d.ts
- @wardenprotocol/protocol-kit/dist/src/types/contracts.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/types/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/types/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/types/passkeys.d.ts
- @wardenprotocol/protocol-kit/dist/src/types/passkeys.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/types/safeConfig.d.ts
- @wardenprotocol/protocol-kit/dist/src/types/safeConfig.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/types/safeProvider.d.ts
- @wardenprotocol/protocol-kit/dist/src/types/safeProvider.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/types/transactions.d.ts
- @wardenprotocol/protocol-kit/dist/src/types/transactions.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/address.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/address.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/block.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/block.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/constants.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/constants.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/eip-3770/config.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/eip-3770/config.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/eip-3770/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/eip-3770/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/eip-712/encode.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/eip-712/encode.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/eip-712/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/eip-712/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/erc-20/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/erc-20/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/getProtocolKitVersion.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/getProtocolKitVersion.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/memoized.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/memoized.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/messages/SafeMessage.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/messages/SafeMessage.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/on-chain-tracking/generateOnChainIdentifier.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/on-chain-tracking/generateOnChainIdentifier.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/PasskeyClient.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/PasskeyClient.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/createPasskeyDeploymentTransaction.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/createPasskeyDeploymentTransaction.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/extractPasskeyData.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/extractPasskeyData.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/getPasskeyOwnerAddress.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/getPasskeyOwnerAddress.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/isSharedSigner.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/passkeys/isSharedSigner.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/provider.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/provider.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/safeVersions.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/safeVersions.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/signatures/SafeSignature.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/signatures/SafeSignature.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/signatures/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/signatures/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/signatures/utils.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/signatures/utils.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/SafeTransaction.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/SafeTransaction.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/gas.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/gas.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/index.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/types.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/types.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/utils.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/transactions/utils.d.ts.map
- @wardenprotocol/protocol-kit/dist/src/utils/types.d.ts
- @wardenprotocol/protocol-kit/dist/src/utils/types.d.ts.map
- @wardenprotocol/protocol-kit/dist/test-utils/index.d.ts
- @wardenprotocol/protocol-kit/dist/test-utils/index.d.ts.map
- @wardenprotocol/protocol-kit/dist/test-utils/passkeys.d.ts
- @wardenprotocol/protocol-kit/dist/test-utils/passkeys.d.ts.map
- @wardenprotocol/protocol-kit/dist/test-utils/webauthnShim.d.ts
- @wardenprotocol/protocol-kit/dist/test-utils/webauthnShim.d.ts.map
- @wardenprotocol/protocol-kit/test-utils
Readme
Protocol Kit
Software development kit that facilitates the interaction with Safe Smart Accounts using a TypeScript interface. This Kit can be used to create new Safe accounts, update the configuration of existing Safes, create and execute transactions, among other features.
Table of contents
Documentation
Head to the Protocol Kit docs to learn more about how to use this SDK.
Installation
Install the package with yarn or npm:
yarn add @wardenprotocol/protocol-kit
npm install @wardenprotocol/protocol-kitQuick Start
provider: You can set an EIP-1193 compatible provider or an HTTP/WebSocket RPC URL.signer: This is an optional parameter. It should be the provider's address you want to use or a private key. If not set, it will try to fetch a connected account from the provider.
Loading an already deployed Safe, using the safeAddress property:
import Safe from '@wardenprotocol/protocol-kit'
const protocolKit = await Safe.init({
provider,
signer,
safeAddress
})Initialization of an undeployed Safe using the predictedSafe property. Because Safes are deployed in a deterministic way, passing a predictedSafe will allow to initialize the SDK with the Safe configuration and use it to some extent before it's deployed:
import Safe, { PredictedSafeProps } from '@wardenprotocol/protocol-kit'
const predictedSafe: PredictedSafeProps = {
safeAccountConfig,
safeDeploymentConfig
}
const protocolKit = await Safe.init({
provider,
signer,
predictedSafe
})Need Help or Have Questions?
If you have any doubts, questions, or need assistance, feel free to reach out! Here you will find how to get support.
Contributing
Please read our contribution guidelines before submitting any changes. We appreciate your help! 🙌
License
This library is released under MIT.