import { AfterViewInit, Component, Input, Output, EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
import { SessionContext } from '../../common/session-context';
import { SortingState } from '../../model/sorting-state';

@Component({
  selector: 'app-sorting',
  templateUrl: './sorting.component.html'
})

export class SortingComponent {

  @Input() columnName: string;
  @Input() initColumnName: string;
  @Input() defaultState: boolean;
  @Input() isDesc: boolean;
  
}