import { CampParticipant } from '../../types/camp';
import { ParticipantSearchModel } from '../../types/ParticipantSearchCriteria';
import { NewParticipant } from './camp-event-participant.state';

export class InsertCampEventParticipant {
    static readonly type = '[camp event participant new] InsertCampEventParticipant';

    constructor(public payload: { personId: number | null, campId: number, newParticip: NewParticipant } = null) {
    }
}
export class InsertMultiCampEventParticipant {
    static readonly type = '[camp event participant new] InsertMultiCampEventParticipant';

    constructor(public personIdList: number[], public campId: number) {
    }
}

export class CampParticipantSearchPerson {
    static readonly type = '[camp event participant new] search person';

    constructor(public payload: ParticipantSearchModel) {
    }
}
export class CampEventUpdateParticipant {
    static readonly type = '[camp event participant new] update participant';
    constructor(public payload: { particip: CampParticipant }) {
    }
}
export class CampEventLoadDegrees {
    static readonly type = '[camp event participant new] load degrees';
    constructor() {
    }
}

export class CampEventParticipantResetSearch {
    static readonly type = '[camp event participant new] reset search';
}
export class LoadCampEventPersonMulti {
    static readonly type = '[camp event participant new] load camp event person multi';
    constructor(public campId: number) {
    }
}

