Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | 1x 1x 6x | import { Config, Contract } from "@jonloucks/contracts-ts/api/Contract";
import { guardFunctions, OptionalType, RequiredType } from "@jonloucks/contracts-ts/api/Types";
/**
* A Contract factory to bootstrapping Global Contracts and provide
* Standalone services for special needs.
*/
export interface ContractFactory {
/**
* Create a new Contract
* Note: Caller is responsible for invoking 'open' before using methods
* Note: If caller does invoke 'open' it is required to invoke 'close' when appropriate
*
* @param config the Contract configuration
* @return the new Contract
*/
createContract<T>(config?: OptionalType<Config<T>>): RequiredType<Contract<T>>;
}
/**
* Type guard for ContractFactory
*
* @param value the value to check
* @return true if value is a ContractFactory, false otherwise
*/
export function guard(value: unknown): value is RequiredType<ContractFactory> {
return guardFunctions(value, 'createContract');
} |