import * as z from "zod/v4-mini"; import { OpenEnum } from "../types/enums.js"; import { Result as SafeParseResult } from "../types/fp.js"; import { SDKValidationError } from "./errors/sdk-validation-error.js"; import { SourceAudioDetails } from "./source-audio-details.js"; import { SourceVideoDetails } from "./source-video-details.js"; import { StreamAudioDetails } from "./stream-audio-details.js"; import { StreamVideoDetails } from "./stream-video-details.js"; import { SubtitleInfo } from "./subtitle-info.js"; import { TranscodeInfo } from "./transcode-info.js"; export declare const SessionHistoryState: { readonly Playing: "playing"; readonly Paused: "paused"; readonly Stopped: "stopped"; }; export type SessionHistoryState = OpenEnum; export declare const SessionHistoryMediaType: { readonly Movie: "movie"; readonly Episode: "episode"; readonly Track: "track"; readonly Live: "live"; readonly Photo: "photo"; readonly Unknown: "unknown"; }; export type SessionHistoryMediaType = OpenEnum; export declare const SessionHistoryVideoDecision: { readonly Directplay: "directplay"; readonly Copy: "copy"; readonly Transcode: "transcode"; }; export type SessionHistoryVideoDecision = OpenEnum; export declare const SessionHistoryAudioDecision: { readonly Directplay: "directplay"; readonly Copy: "copy"; readonly Transcode: "transcode"; }; export type SessionHistoryAudioDecision = OpenEnum; export type SessionHistoryUser = { id: string; username: string; /** * Avatar path from media server */ thumbUrl: string | null; /** * Proxied avatar URL */ avatarUrl: string | null; }; export type SessionHistory = { id: string; serverId: string; serverName: string; state: SessionHistoryState; mediaTitle: string; mediaType: SessionHistoryMediaType; /** * Show name (episodes only) */ showTitle: string | null; seasonNumber: number | null; episodeNumber: number | null; year: number | null; /** * Artist name (music tracks only) */ artistName: string | null; /** * Album name (music tracks only) */ albumName: string | null; /** * Track number (music tracks only) */ trackNumber: number | null; /** * Disc number (music tracks only) */ discNumber: number | null; /** * Poster path */ thumbPath: string | null; /** * Proxied poster URL */ posterUrl: string | null; /** * Total watch time across segments */ durationMs: number | null; progressMs: number | null; /** * Media length */ totalDurationMs: number | null; startedAt: Date; stoppedAt: Date | null; /** * True if watched 85%+ */ watched: boolean; /** * Pause/resume segment count */ segmentCount: number; device: string | null; player: string | null; product: string | null; platform: string | null; isTranscode: boolean | null; videoDecision: SessionHistoryVideoDecision | null; audioDecision: SessionHistoryAudioDecision | null; /** * Bitrate in kbps */ bitrate: number | null; sourceVideoCodec: string | null; sourceAudioCodec: string | null; sourceAudioChannels: number | null; sourceVideoWidth: number | null; sourceVideoHeight: number | null; sourceVideoDetails: SourceVideoDetails | null; sourceAudioDetails: SourceAudioDetails | null; streamVideoCodec: string | null; streamAudioCodec: string | null; streamVideoDetails: StreamVideoDetails | null; streamAudioDetails: StreamAudioDetails | null; transcodeInfo: TranscodeInfo | null; subtitleInfo: SubtitleInfo | null; /** * 4K, 1080p, 720p, etc. */ resolution: string | null; sourceVideoCodecDisplay: string | null; sourceAudioCodecDisplay: string | null; audioChannelsDisplay: string | null; streamVideoCodecDisplay: string | null; streamAudioCodecDisplay: string | null; user: SessionHistoryUser; }; /** @internal */ export declare const SessionHistoryState$inboundSchema: z.ZodMiniType; /** @internal */ export declare const SessionHistoryMediaType$inboundSchema: z.ZodMiniType; /** @internal */ export declare const SessionHistoryVideoDecision$inboundSchema: z.ZodMiniType; /** @internal */ export declare const SessionHistoryAudioDecision$inboundSchema: z.ZodMiniType; /** @internal */ export declare const SessionHistoryUser$inboundSchema: z.ZodMiniType; export declare function sessionHistoryUserFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SessionHistory$inboundSchema: z.ZodMiniType; export declare function sessionHistoryFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=session-history.d.ts.map