import { TraktApiIds } from '../traktTypes';
/**
 * People who work on a movie
 */
export interface MoviePeople {
    cast?: MovieCastMember[];
    crew?: MovieCrew;
}
/**
 * People who work on a show
 */
export interface ShowPeople {
    cast?: ShowCastMember[];
    crew?: ShowCrew;
}
/**
 * Movie crew broken up by department
 */
export interface MovieCrew {
    production?: MovieCrewMember[];
    art?: MovieCrewMember[];
    crew?: MovieCrewMember[];
    'costume & make-up'?: MovieCrewMember[];
    directing?: MovieCrewMember[];
    writing?: MovieCrewMember[];
    sound?: MovieCrewMember[];
    camera?: MovieCrewMember[];
    'visual effects'?: MovieCrewMember[];
    lighting?: MovieCrewMember[];
    editing?: MovieCrewMember[];
}
/**
 * Show crew broken up by department
 */
export interface ShowCrew {
    art?: ShowCrewMember[];
    production?: ShowCrewMember[];
    sound?: ShowCrewMember[];
    'visual effects'?: ShowCrewMember[];
    'costume & make-up'?: ShowCrewMember[];
    writing?: ShowCrewMember[];
    directing?: ShowCrewMember[];
    camera?: ShowCrewMember[];
    lighting?: ShowCrewMember[];
    editing?: ShowCrewMember[];
    'created by'?: ShowCrewMember[];
}
/**
 * Cast member in a movie
 */
export interface MovieCastMember {
    characters: string[];
    person: Person;
}
/**
 * Cast member in a show
 * @remarks
 * Same as MovieCastMember but with episode count
 */
export interface ShowCastMember extends MovieCastMember {
    episode_count: number;
}
/**
 * Crew member in a movie
 */
export interface MovieCrewMember {
    jobs: string[];
    person: Person;
}
/**
 * Cew member in a show
 * @remarks
 * Same as MovieCrewMember but with episode count
 */
export interface ShowCrewMember extends MovieCrewMember {
    episode_count: number;
}
/**
 * Just a generic person obj
 */
export interface Person {
    name: string;
    ids: TraktApiIds;
}
//# sourceMappingURL=people.d.ts.map