export interface Notes {
    student: StudentUser;
    user_course: UserCourse;
    notes_score: NotesScore;
    final_score: number;
}
export interface NotesScore {
    writing_reading: NoteValue[];
    speaking_listening: NoteValue[];
    actitude_participation: NoteValue[];
    final_test_oral: NoteValue;
    final_test_written: NoteValue;
    hab?: NoteValue;
}
export interface NoteValue {
    code: number;
    note_code: number;
    note_type: number;
    note_value: number;
    observation: string;
}
export interface StudentUser {
    code: number;
    name: string;
    last_name: string;
    nick_name: string;
    email: string;
    email_ipt: string;
    role: number;
    service_hour: number;
    phone_indicative: number;
    phone_number: string;
    gender: number;
    birthdate: Date;
    city: number;
    id_card_type: number;
    id_card: string;
    user_status: number;
}
export interface UserCourse {
    code: number;
    student_code: number;
    course_code: number;
    notes: number;
}
export interface GetNotesByGroupRq {
    token: string;
    course_code: number;
}
export interface GetNotesByStudentRq {
    token: string;
    student_code: number;
}
export interface CreateNewNoteRq {
    token: string;
    course_code: number;
    student_code: number;
    note_code: number;
    note_type: number;
    note_value: number;
    observation: string;
}
export interface UpdateStudentNoteRq {
    token: string;
    note_code: number;
    note_value: number;
    observation?: string;
}
export interface calculateFinalNoteRq {
    token: string;
    student_code: number;
    course_code: number;
    notes_code: number;
}
export interface NoteFormResult {
    group_code: number;
    note_type: NoteTypeOfNoteForm;
    notes: NoteOfNoteForm[];
    observation: string;
}
export interface NoteTypeOfNoteForm {
    code: number;
    name: string;
}
export interface NoteOfNoteForm {
    student_code: number;
    note_code: number;
    note: number;
    observation: string;
}
export interface IServiceCreateNewNoteRq {
    token: string;
    courseCode: number;
    typeNoteStudent: INoteTypeStudentRq;
    notesStudent: INoteStudentRq[];
    observationNotes: string;
}
export interface INoteTypeStudentRq {
    code: number;
    note_name: string;
}
export interface INoteStudentRq {
    student_code: string;
    note_code: string;
    note: string;
}
export interface IResponseCreateNewNoteRq {
    ip_applicant: string;
    status: number;
    message: MessageDataRq;
    data: RsCreateNewNoteRq[];
}
export interface RsCreateNewNoteRq {
    note_code: string;
    note_type: number;
    note_value: string;
    observation: string;
    code: number;
}
export interface IObtainNoteRq {
    ip_applicant: string;
    status: number;
    message: MessageDataRq;
    data: RsObtainNoteRq[];
}
export interface RsObtainNoteRq {
    student: StudentNotesRq;
    notes_score: NotesScore;
    user_course: UserCourse;
    all_averages: AllAveragesRq;
    final_score: FinalScoreRq;
}
export interface AllAveragesRq {
    Writing: number;
    Speaking: number;
    Attitude: number;
    FinalOral: number;
    FinalWriting: number;
    Habilitation: number;
    FinalScore: number;
}
export interface FinalScoreRq {
    code: number;
    student_code: number;
    final_score: number;
}
export interface StudentNotesRq {
    code: number;
    name: string;
    last_name: string;
    nick_name: string;
    email: string;
    email_ipt: null;
    role: number;
    service_hour: number;
    phone_indicative: number;
    phone_number: string;
    gender: number;
    birthdate: Date;
    city: number;
    id_card_type: number;
    id_card: string;
    token: string;
    user_status: number;
}
export interface MessageDataRq {
    code: number;
    message: string;
}
export interface INotesByUCourseAndStudentRq {
    token: string;
    course_code: number;
    student_code: number;
}
export interface IServiceUpdateNoteRq {
    token: string;
    note_type: INoteTypeStudentRq;
    notes: INote[];
    student: IStudentResum;
}
export interface IServiceDeleteNoteRq {
    token: string;
    note_type: INoteTypeStudentRq;
    notes: INote[];
    student: IStudentResum;
}
export interface INote {
    note_code: string;
    note_value: string;
    observation: string;
}
export interface IStudentResum {
    code: number;
    name: string;
}
export interface RsSaveChangesNoteRq {
    ip_applicant: string;
    status: number;
    message: MessageDataRq;
    data: NoteValue[];
}
export interface INewNotesScoreRq {
    writing_reading: NoteValue[];
    speaking_listening: NoteValue[];
    actitude_participation: NoteValue[];
    final_test_oral: NoteValue[];
    final_test_written: NoteValue[];
    hab?: NoteValue[];
    final_note: FinalScoreRq;
}
export interface IRsUserCourseRs {
    code: number;
    note_code: number;
    student: StudentUser;
    course: IDataCourseRq;
    notes: INewNotesScoreRq;
}
export interface IDataCourseRq {
    code: number;
    course_schedule: number;
    teacher: number;
    course_type: number;
    to_start: Date;
    start_date: Date;
    finish_date: Date;
    capacity: number;
    more_days: null | number;
    english_level: number;
    agreement: number;
    course_modality: number;
}
export interface IGetUrlFileExcel {
    file_path: string;
    name: string;
    content_type: string;
}
export interface IdeletedNoteScoreRq {
    token: string;
    notes: INoteRq[];
}
export interface INoteRq {
    note_code: string;
}
