diff --git a/packages/account-sdk/src/interface/builder/core/createBaseAccountSDK.ts b/packages/account-sdk/src/interface/builder/core/createBaseAccountSDK.ts index 547186b2..f1bc04ed 100644 --- a/packages/account-sdk/src/interface/builder/core/createBaseAccountSDK.ts +++ b/packages/account-sdk/src/interface/builder/core/createBaseAccountSDK.ts @@ -23,12 +23,26 @@ export type CreateProviderOptions = Partial & { paymasterUrls?: Record; }; +export type BaseAccountSDK = { + getProvider: () => ProviderInterface | null; + subAccount: { + create(accountParam: AddSubAccountAccount): Promise; + get(): Promise; + addOwner(params: { + address?: `0x${string}`; + publicKey?: `0x${string}`; + chainId: number; + }): Promise; + setToOwnerAccount(toSubAccountOwner: ToOwnerAccountFn): void; + }; +}; + /** * Create Base AccountSDK instance with EIP-1193 compliant provider * @param params - Options to create a base account SDK instance. - * @returns An SDK object with a getProvider method that returns an EIP-1193 compliant provider. + * @returns BaseAccountSDK - An SDK object with a getProvider method that returns an EIP-1193 compliant provider. */ -export function createBaseAccountSDK(params: CreateProviderOptions) { +export function createBaseAccountSDK(params: CreateProviderOptions): BaseAccountSDK { const options: ConstructorOptions = { metadata: { appName: params.appName || 'App', @@ -186,4 +200,4 @@ export function createBaseAccountSDK(params: CreateProviderOptions) { }; return sdk; -} +} \ No newline at end of file