/**
 * DivisionDto - Data Transfer Object for division/region information
 *
 * This DTO represents a division or regional entity within an organization
 * or geographic system. It's typically used for:
 * - Administrative region classification
 * - Organizational department structure
 * - Geographic area segmentation
 * - Data filtering and grouping by division
 *
 * Common use cases:
 * - User/employee assignment to divisions
 * - Sales or operational reporting by region
 * - Content filtering based on geographic division
 * - Permission management by organizational division
 *
 * @example
 * // Division data for dropdown selection
 * const division: DivisionDto = {
 *   division_id: 1,
 *   division_name: 'North America Region'
 * };
 *
 * @example
 * // Usage in service response
 * async getDivisions(): Promise<DivisionDto[]> {
 *   return [
 *     { division_id: 1, division_name: 'North America' },
 *     { division_id: 2, division_name: 'Europe' },
 *     { division_id: 3, division_name: 'Asia Pacific' }
 *   ];
 * }
 */
export class DivisionDto {
  /**
   * Unique identifier for the division
   *
   * Primary key or unique identifier for the division entity.
   * Typically used for:
   * - Database relationships (foreign keys)
   * - API endpoint parameters (/divisions/{division_id})
   * - Data filtering and referencing
   * - Sorting and ordering
   *
   * @example 1
   * @example 1001
   */
  division_id: number;

  /**
   * Human-readable name of the division
   *
   * Display name for the division used in:
   * - User interfaces and dropdowns
   * - Reports and dashboards
   * - Email communications
   * - System notifications
   *
   * Best practices:
   * - Use clear, descriptive names
   * - Consider localization for multilingual applications
   * - Maintain consistency in naming conventions
   * - Avoid special characters that might cause display issues
   *
   * @example 'North America Region'
   * @example 'Engineering Department'
   * @example 'Eastern Sales Territory'
   */
  division_name: string;
}
