import { type SignerContext, SyncAgent, type SyncAgentConfig } from '@towns-protocol/sdk'; import { ethers } from 'ethers'; /** * Sign and connect to Towns using a Signer and a random delegate wallet every time * @param signer - The signer to use * @param config - The configuration for the sync agent * @returns The sync agent */ export declare const signAndConnect: (signer: ethers.Signer, config: Omit) => Promise; /** * Connect to Towns using a SignerContext * * Useful for server side code, allowing you to persist the signer context and use it to auth with Towns later * @param signerContext - The signer context to use * @param config - The configuration for the sync agent * @returns The sync agent */ export declare const connectTowns: (signerContext: SignerContext, config: Omit) => Promise; /** * Connect to Towns using a Bearer Token * Towns clients can use this to connect to Towns Protocol on behalf of a user * * Useful for server side code, allowing you to persist the signer context and use it to auth with Towns later * @param token - The bearer token to use * @param config - The configuration for the sync agent * @returns The sync agent */ export declare const connectTownsWithBearerToken: (token: string, config: Omit) => Promise; //# sourceMappingURL=connectTowns.d.ts.map