alice-bob
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

alice-bob

transport agnostic strongly typed duplex rpc interfaces

npm i alice-bob pnpm add alice-bob yarn add alice-bob

API

# Alice – Alice class. src/alice-bob.ts#L292
# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any

# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A & {

# target src/alice-bob.ts#L95

}
# remote – The remote Agent. src/alice-bob.ts#L99
# agents(local, remote) – Returns the agents tuple [alice, bob]. src/alice-bob.ts#L276

    Example:

const [alice, bob] = new Alice<Local, Remote>().agents()

// to enable debugging on local (alice)
const [alice, bob] = new Alice<Local, Remote>().agents({ debug: true })

// use different names:
const [alice, bob] = new Alice<Local, Remote>().agents(
  { name: 'server', debug: true },
  { name: 'client' }
)
# local
# remote

agents(local, remote)  =>

# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any
# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A & {

# target src/alice-bob.ts#L95

}, Agent<B, A> ]
# deserializer(data) src/alice-bob.ts#L108

    # data

      any

    deserializer(data)  =>

      any
# serializer(data) src/alice-bob.ts#L107

    # data

      any

    serializer(data)  =>

      any
# AliceBob – AliceBob class. src/alice-bob.ts#L82
# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any
# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A & {

# target src/alice-bob.ts#L95

}
# remote – The remote Agent. src/alice-bob.ts#L99
# agents(local, remote) – Returns the agents tuple [alice, bob]. src/alice-bob.ts#L276

    Example:

const [alice, bob] = new Alice<Local, Remote>().agents()

// to enable debugging on local (alice)
const [alice, bob] = new Alice<Local, Remote>().agents({ debug: true })

// use different names:
const [alice, bob] = new Alice<Local, Remote>().agents(
  { name: 'server', debug: true },
  { name: 'client' }
)
# local
# remote

agents(local, remote)  =>

# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any
# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A & {

# target src/alice-bob.ts#L95

}, Agent<B, A> ]
# deserializer(data) src/alice-bob.ts#L108

    # data

      any

    deserializer(data)  =>

      any
# serializer(data) src/alice-bob.ts#L107

    # data

      any

    serializer(data)  =>

      any
# Bob – Bob class. src/alice-bob.ts#L313
# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any
# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A & {

# target src/alice-bob.ts#L95

}
# remote – The remote Agent. src/alice-bob.ts#L99
# agents(local, remote) – Returns the agents tuple [alice, bob]. src/alice-bob.ts#L276

    Example:

const [alice, bob] = new Alice<Local, Remote>().agents()

// to enable debugging on local (alice)
const [alice, bob] = new Alice<Local, Remote>().agents({ debug: true })

// use different names:
const [alice, bob] = new Alice<Local, Remote>().agents(
  { name: 'server', debug: true },
  { name: 'client' }
)
# local
# remote

agents(local, remote)  =>

# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any
# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A & {

# target src/alice-bob.ts#L95

}, Agent<B, A> ]
# deserializer(data) src/alice-bob.ts#L108

    # data

      any

    deserializer(data)  =>

      any
# serializer(data) src/alice-bob.ts#L107

    # data

      any

    serializer(data)  =>

      any
# Payload – Payload. src/alice-bob.ts#L6
# Agent – Agent. src/alice-bob.ts#L28
# deserializer(data) src/alice-bob.ts#L57

    # data

      unknown

    deserializer(data)  =>

      any
# log(args) – Overridable logging function. Defaults to console.log() and prepends agent.name. src/alice-bob.ts#L63

    # args

      unknown []

    log(args)  =>

      void
# serializer(data) src/alice-bob.ts#L56

    # data

      unknown

    serializer(data)  =>

      any
} & A
# PayloadMethod src/alice-bob.ts#L21

    # (payload)

      # payload

      (payload)  =>

        Promise<unknown> | unknown

Contributing

Fork or edit and submit a PR.

All contributions are welcome!

License

MIT © 2022 stagas

Package Sidebar

Install

npm i alice-bob

Weekly Downloads

44

Version

2.0.0

License

MIT

Unpacked Size

130 kB

Total Files

23

Last publish

Collaborators

  • stagas