PDA Helpers
Derive all IronQ account addresses client-side
The SDK provides functions to derive all PDA addresses deterministically.
findQueuePDA
import { findQueuePDA } from "ironq-sdk";
const [queuePDA, bump] = findQueuePDA(authorityPublicKey);
Seeds: ["queue", authority]
findVaultPDA
import { findVaultPDA } from "ironq-sdk";
const [vaultPDA, bump] = findVaultPDA(queuePublicKey);
Seeds: ["vault", queue]
findJobPDA
import { findJobPDA } from "ironq-sdk";
import { BN } from "@coral-xyz/anchor";
const [jobPDA, bump] = findJobPDA(queuePublicKey, new BN(0));
// or with a plain number:
const [jobPDA2, bump2] = findJobPDA(queuePublicKey, 42);
Seeds: ["job", queue, job_id_le_bytes] — the job ID is encoded as 8-byte little-endian.
findWorkerPDA
import { findWorkerPDA } from "ironq-sdk";
const [workerPDA, bump] = findWorkerPDA(queuePublicKey, walletPublicKey);
Seeds: ["worker", queue, wallet]
findResultPDA
import { findResultPDA } from "ironq-sdk";
const [resultPDA, bump] = findResultPDA(jobPublicKey);
Seeds: ["result", job]