import type { VaultfireV3Config, V3Mandate } from "./types";
export class MandateModuleV3 {
  constructor(protected readonly cfg: VaultfireV3Config) {}
  async register(_m: V3Mandate, _sig: `0x${string}`) { throw new Error("wire to MandateRegistryV3.registerMandate"); }
  async revoke(_mandateHash: `0x${string}`) { throw new Error("wire to MandateRegistryV3.revokeMandate"); }
  async lookup(mandateHash: `0x${string}`) {
    const res = await fetch(`${this.cfg.baseUrl}/api/v3/mandate/${mandateHash}`);
    if (!res.ok) throw new Error(`v3 mandate lookup failed: ${res.status}`);
    return res.json();
  }
}
