import Block from "./block.ts";import Blockchain from "./blockchain.ts";import { DigestAlgorithm } from "./typings.ts";import withHasher from "./withHasher.ts";
interface ChockblainConfig<T> { algorithm?: DigestAlgorithm;
defaultBlockchain?: Block<T>[];}
const chockblain = <T>(config?: ChockblainConfig<T>) => { const { algorithm = "SHA-256", defaultBlockchain = [] } = config ?? {}; const useHasher = withHasher(algorithm); const blockchain = new Blockchain<T>(useHasher, defaultBlockchain); return blockchain;};
export default chockblain;