import type { CarrierAdapter, CarrierKind } from './types';

export class ManualAdapter implements CarrierAdapter {
  capabilities = {
    canBuyLabel: false,
    hasTrackingApi: false,
    hasWebhook: false,
    supportsInsurance: false,
  };
  constructor(public kind: CarrierKind) {}
  async buyLabel(): Promise<never> {
    throw new Error(`carrier_no_label_buy:${this.kind}`);
  }
  async track(): Promise<never> {
    throw new Error(`carrier_no_tracking_api:${this.kind}`);
  }
  async verifyWebhook(): Promise<null> {
    return null;
  }
}
