import { HexString, KeyDeriverApi, WalletProtocol, ScriptTemplate, ScriptTemplateUnlock, LockingScript, P2PKH, PrivateKey, Script } from '@bsv/sdk';
export declare const brc29ProtocolID: WalletProtocol;
export interface ScriptTemplateParamsBRC29 {
    derivationPrefix?: string;
    derivationSuffix?: string;
    keyDeriver: KeyDeriverApi;
}
/**
 * Simple Authenticated BSV P2PKH Payment Protocol
 * https://brc.dev/29
 */
export declare class ScriptTemplateBRC29 implements ScriptTemplate {
    params: ScriptTemplateParamsBRC29;
    p2pkh: P2PKH;
    constructor(params: ScriptTemplateParamsBRC29);
    getKeyID(): string;
    getKeyDeriver(privKey: PrivateKey | HexString): KeyDeriverApi;
    lock(lockerPrivKey: string, unlockerPubKey: string): LockingScript;
    unlock(unlockerPrivKey: string, lockerPubKey: string, sourceSatoshis?: number, lockingScript?: Script): ScriptTemplateUnlock;
    /**
     * P2PKH unlock estimateLength is a constant
     */
    unlockLength: number;
}
//# sourceMappingURL=ScriptTemplateBRC29.d.ts.map