import { Address } from '@solana/addresses';

declare function deriveAgentPda(params: {
    owner: Address;
    agentId: string;
    programAddress: Address;
}): Promise<[Address, number]>;
/**
 * Derive user registry PDA
 * Pattern: ['user_registry', signer]
 * NOTE: Fixed to match smart contract expectations - includes signer address
 */
declare function deriveUserRegistryPda(programId: Address, signer: Address): Promise<Address>;
/**
 * Derive agent verification PDA
 * Pattern: ['agent_verification', agent, verifier]
 */
declare function deriveAgentVerificationPda(programId: Address, agent: Address, verifier: Address): Promise<Address>;
/**
 * Generic PDA finder for custom use cases
 * Pattern: seeds array with automatic encoding
 */
declare function findProgramDerivedAddress(seeds: (string | Address | Uint8Array)[], programId: Address): Promise<[Address, number]>;

export { deriveUserRegistryPda as a, deriveAgentVerificationPda as b, deriveAgentPda as d, findProgramDerivedAddress as f };
