import type { SdkSymbolKind } from '@mintlify/models';
import type { SdkFormat } from '@mintlify/validation';

export type { SdkFormat };

export type SdkPageTarget = {
  kind: SdkSymbolKind;
  name: string;
  parent?: string;
};

export type SdkPage = {
  slug: string;
  title: string;
  description?: string;
  tag?: string;
  icon?: string;
  content: string;
  target?: SdkPageTarget;
};

export type SdkNavGroup = {
  group: string;
  pages: string[];
};

export type SdkReference = {
  pages: SdkPage[];
  groups: SdkNavGroup[];
};

export type SdkConverter = (sourcePath: string) => Promise<SdkReference>;
