export type FillFieldType = 'text' | 'multiline' | 'select' | 'checkbox' | 'date';
export type FillFieldValue = boolean | string;

export interface FillFieldData {
  type: FillFieldType;
  value: FillFieldValue | null;
}

export interface FillDataResponse {
  fields: Record<string, FillFieldData>;
}

export interface SelectOption {
  display: string;
  value: string;
}

export interface DocumentField {
  alias: string;
  currentValue: FillFieldValue;
  internalId: string;
  options: SelectOption[];
  tag: string;
  type: FillFieldType;
}

export interface FieldChange {
  tag: string;
  type: FillFieldType;
  value: FillFieldValue;
}

export interface FieldApplyResult {
  error?: string;
  ok: boolean;
  tag: string;
}
