Abstract Class: ProtocolFactory<L>
Defined in: packages/overcast-core/src/layer/factory.ts:19
The single chain-specific entry point: builds every per-layer piece the SDK composes into an OvercastApp — the on-chain OvercastReader, the transaction-building OvercastWriter, the OvercastChainSigner and the OvercastIndexerClient. A settlement layer implements this one factory (e.g. a Solana factory) and is good to go; the rest of the SDK stays chain-agnostic.
Type Parameters
| Type Parameter | Description |
|---|---|
L extends OvercastLayer | the OvercastLayer describing this settlement layer. |
Constructors
Constructor
new ProtocolFactory<L>(config): ProtocolFactory<L>;
Defined in: packages/overcast-core/src/layer/factory.ts:22
Parameters
| Parameter | Type |
|---|---|
config | L["config"] |
Returns
ProtocolFactory<L>
Properties
config
readonly config: L["config"];
Defined in: packages/overcast-core/src/layer/factory.ts:20
Accessors
settlementLayers
Get Signature
get abstract settlementLayers(): SettlementLayerRegistry<L>;
Defined in: packages/overcast-core/src/layer/factory.ts:45
The settlement layers this chain implements, keyed by type. Which layers
exist is a per-chain fact, so it lives on the factory alongside
utils. A caller-side helper (surfaced as app.settlement) for
picking the config an offer commits to — the writer never consults it.
Returns
utils
Get Signature
get abstract utils(): OvercastUtils;
Defined in: packages/overcast-core/src/layer/factory.ts:37
The layer's OvercastUtils (address validation etc.). Stateless and
connection-free, so — unlike the create* methods — it is resolved
synchronously.
Returns
Methods
createChainSigner()
abstract createChainSigner(): Promise<OvercastChainSigner<L>>;
Defined in: packages/overcast-core/src/layer/factory.ts:29
The layer's transaction signer (build → sign → submit).
Returns
Promise<OvercastChainSigner<L>>
createIndexerClient()
abstract createIndexerClient(): Promise<OvercastIndexerClient>;
Defined in: packages/overcast-core/src/layer/factory.ts:30
Returns
Promise<OvercastIndexerClient>
createReader()
abstract createReader(): Promise<OvercastReader>;
Defined in: packages/overcast-core/src/layer/factory.ts:26
Returns
Promise<OvercastReader>
createWriter()
abstract createWriter(): Promise<OvercastWriter<L["tx"]>>;
Defined in: packages/overcast-core/src/layer/factory.ts:27
Returns
Promise<OvercastWriter<L["tx"]>>