export interface ContentPackage { id?: string; name: string; accessRules: AccessRule[]; accountsConnected?: ContentPackageAccount[]; } export interface AccessRule { type: AccessRuleType; videoIds?: string[]; collectionIds?: string[]; channelIds?: string[]; distributionMethods?: string[]; videoTypes?: string[]; languages?: string[]; categoryCodes?: string[]; subjectIds?: string[]; voiceTypes?: string[]; sources?: string[]; educationLevelCodes?: string[]; contentWarningIds?: string[]; } export interface ContentPackageAccount { id: string; name: string; } export type AccessRuleType = 'ExcludedVideos' | 'IncludedVideos' | 'IncludedCollections' | 'IncludedChannels' | 'IncludedDistributionMethods' | 'ExcludedChannels' | 'IncludedVideoTypes' | 'ExcludedVideoTypes' | 'IncludedPrivateChannels' | 'ExcludedLanguages' | 'IncludedVideoVoiceTypes' | 'IncludeVideosWithCustomMetadata' | 'IncludedSubjects' | 'IncludedThemaCategories' | 'ExcludedPlaybackSources' | 'IncludeAllPrivateChannels' | 'IncludedEducationLevels' | 'ExcludedEducationLevels' | 'ExcludedContentWarnings';