import { Character, NameIdKey, Resource, ResponseBase } from "@blizzard-api/core";

//#region src/character-soulbinds/types.d.ts
interface CharacterSoulbindsResponse extends ResponseBase {
  character: Character;
  chosen_covenant: NameIdKey;
  renown_level: number;
  soulbinds: Array<Soulbind>;
}
interface ConduitSocket {
  socket: Socket;
  type: TypeClass;
}
interface Socket {
  conduit: NameIdKey;
  rank: number;
}
interface Soulbind {
  is_active?: boolean;
  soulbind: NameIdKey;
  traits: Array<Trait>;
}
interface Trait {
  conduit_socket?: ConduitSocket;
  display_order: number;
  tier: number;
  trait?: NameIdKey;
}
interface TypeClass {
  name: string;
  type: 'ENDURANCE' | 'FINESSE' | 'POTENCY';
}
//#endregion
//#region src/character-soulbinds/index.d.ts
/**
 * @param realmSlug The slug of the realm.
 * @param characterName The lowercase name of the character.
 * @returns a character's soulbinds.
 */
declare function characterSoulbinds(realmSlug: string, characterName: string): Resource<CharacterSoulbindsResponse>;
//#endregion
export { CharacterSoulbindsResponse as n, characterSoulbinds as t };
//# sourceMappingURL=index-DlrB4osj.d.ts.map