github.com/MetalBlockchain/metalgo@v1.11.9/vms/platformvm/signer/signer.go (about) 1 // Copyright (C) 2019-2024, Ava Labs, Inc. All rights reserved. 2 // See the file LICENSE for licensing terms. 3 4 package signer 5 6 import ( 7 "github.com/MetalBlockchain/metalgo/utils/crypto/bls" 8 "github.com/MetalBlockchain/metalgo/vms/components/verify" 9 ) 10 11 type Signer interface { 12 verify.Verifiable 13 14 // Key returns the public BLS key if it exists. 15 // Note: [nil] will be returned if the key does not exist. 16 // Invariant: Only called after [Verify] returns [nil]. 17 Key() *bls.PublicKey 18 }