import { LinkProof } from './util' ; import { AccountID } from 'caip' ; /**
 *  AuthProvider defines the interface your custom authProvider must
 *  must implement. The properties network, id, name, image are all required.
 *
 *  AuthProvider is expected to handle just one address.
 *  One could use `#withAddress` to instantiate AuthProvider with another address.
 */ export interface AuthProvider { readonly isAuthProvider : true ; param message return authenticate ( message ) : Promise < string > ; param did return createLink ( did ) : Promise < LinkProof > ; /**
     * Return currently used address as CAIP AccountID.
     */ accountId ( ) : Promise < AccountID > ; param address withAddress ( address ) : AuthProvider ; }