@stagecliplk/remotion-template 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/RemotionPlayer.d.ts +6 -0
  2. package/dist/components/BackgroundUpload.d.ts +12 -0
  3. package/dist/components/ColorPicker.d.ts +14 -0
  4. package/dist/components/DoubleChevronIcon.d.ts +6 -0
  5. package/dist/components/DualRangeSlider.d.ts +12 -0
  6. package/dist/components/LogoPicker.d.ts +22 -0
  7. package/dist/components/LogoUpload.d.ts +8 -0
  8. package/dist/components/RangeSlider.d.ts +13 -0
  9. package/dist/components/SceneTimeline.d.ts +27 -0
  10. package/dist/components/TemplateEditor.d.ts +15 -0
  11. package/dist/data/template.json.d.ts +257 -0
  12. package/dist/index.d.ts +17 -0
  13. package/dist/remotion/DevModeOverlay.d.ts +7 -0
  14. package/dist/remotion/FadeWrapper.d.ts +13 -0
  15. package/dist/remotion/GraduationVideo.d.ts +18 -0
  16. package/dist/remotion/TransitionWrapper.d.ts +9 -0
  17. package/dist/remotion/TrimPreviewVideo.d.ts +10 -0
  18. package/dist/remotion/VideoComposition.d.ts +1 -0
  19. package/dist/remotion/classic_theme/lower3rds/index.d.ts +18 -0
  20. package/dist/remotion/classic_theme/lower3rds/lower3rd_Text_Only.d.ts +12 -0
  21. package/dist/remotion/classic_theme/lower3rds/lower3rd_bars.d.ts +13 -0
  22. package/dist/remotion/classic_theme/lower3rds/lower3rd_blackBar.d.ts +12 -0
  23. package/dist/remotion/classic_theme/lower3rds/lower3rd_classicColor.d.ts +12 -0
  24. package/dist/remotion/classic_theme/lower3rds/lower3rd_classicWhite.d.ts +12 -0
  25. package/dist/remotion/classic_theme/lower3rds/lower3rd_style1.d.ts +12 -0
  26. package/dist/remotion/classic_theme/lower3rds/lower3rd_style2.d.ts +12 -0
  27. package/dist/remotion/classic_theme/lower3rds/lower3rd_style3.d.ts +12 -0
  28. package/dist/remotion/classic_theme/lower3rds/lower3rd_style4.d.ts +12 -0
  29. package/dist/remotion/classic_theme/lower3rds/lower3rd_style5.d.ts +12 -0
  30. package/dist/remotion/classic_theme/scenes/CountdownIntro.d.ts +21 -0
  31. package/dist/remotion/classic_theme/scenes/EnhancedCTAOutro.d.ts +24 -0
  32. package/dist/remotion/classic_theme/scenes/FullscreenVideoIntro.d.ts +25 -0
  33. package/dist/remotion/classic_theme/scenes/LogoRevealIntro.d.ts +24 -0
  34. package/dist/remotion/classic_theme/scenes/MainContentScene copy.d.ts +30 -0
  35. package/dist/remotion/classic_theme/scenes/MessageScene.d.ts +22 -0
  36. package/dist/remotion/classic_theme/scenes/MinimalIntro.d.ts +20 -0
  37. package/dist/remotion/classic_theme/scenes/MinimalLogoOutro.d.ts +20 -0
  38. package/dist/remotion/classic_theme/scenes/OutroScene.d.ts +25 -0
  39. package/dist/remotion/classic_theme/scenes/PhotoMontageScene.d.ts +17 -0
  40. package/dist/remotion/classic_theme/scenes/PhotoStaticScene.d.ts +17 -0
  41. package/dist/remotion/classic_theme/scenes/SplitScreenIntro.d.ts +25 -0
  42. package/dist/remotion/classic_theme/scenes/SplitScreenOutro.d.ts +23 -0
  43. package/dist/remotion/classic_theme/scenes/Stageclip_Logo.d.ts +14 -0
  44. package/dist/remotion/classic_theme/scenes/StudentOpenerIntro.d.ts +24 -0
  45. package/dist/remotion/classic_theme/scenes/StudentPhotoScene.d.ts +19 -0
  46. package/dist/remotion/classic_theme/scenes/Student_Clip.d.ts +33 -0
  47. package/dist/remotion/classic_theme/scenes/Student_Clip_Replay.d.ts +33 -0
  48. package/dist/remotion/classic_theme/scenes/Student_Clip_Zoom.d.ts +34 -0
  49. package/dist/remotion/classic_theme/scenes/ThankYouOutro.d.ts +21 -0
  50. package/dist/remotion/classic_theme/scenes/TitleScene.d.ts +24 -0
  51. package/dist/remotion/classic_theme/scenes/VideoClipScene.d.ts +22 -0
  52. package/dist/remotion/index.d.ts +1 -0
  53. package/dist/theme.d.ts +13 -0
  54. package/dist/types/template.d.ts +126 -0
  55. package/dist/utils/googleFonts.d.ts +11 -0
  56. package/dist/utils/sceneDurationCalculator.d.ts +10 -0
  57. package/dist/utils/templateResolver.d.ts +3 -0
  58. package/package.json +7 -6
@@ -0,0 +1,6 @@
1
+ import { VideoTemplate } from './types/template';
2
+ export declare const RemotionPlayer: ({ devMode, activeAspectRatio, template, }: {
3
+ devMode?: boolean;
4
+ activeAspectRatio: "16:9" | "9:16";
5
+ template: VideoTemplate;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ interface BackgroundUploadProps {
3
+ label: string;
4
+ currentUrl: string;
5
+ onUrlChange: (url: string) => void;
6
+ opacity?: number;
7
+ onOpacityChange?: (opacity: number) => void;
8
+ loop?: boolean;
9
+ onLoopChange?: (loop: boolean) => void;
10
+ }
11
+ export declare const BackgroundUpload: React.FC<BackgroundUploadProps>;
12
+ export {};
@@ -0,0 +1,14 @@
1
+ interface ColorPickerProps {
2
+ label: string;
3
+ value: string;
4
+ brandColors: {
5
+ brandColor1: string;
6
+ brandColor2: string;
7
+ brandColor3: string;
8
+ };
9
+ onChange: (value: string) => void;
10
+ currentVariable?: string;
11
+ onBrandColorSelect?: (brandColorKey: string) => void;
12
+ }
13
+ export declare const ColorPicker: React.FC<ColorPickerProps>;
14
+ export {};
@@ -0,0 +1,6 @@
1
+ interface DoubleChevronIconProps {
2
+ style?: React.CSSProperties;
3
+ className?: string;
4
+ }
5
+ export declare const DoubleChevronIcon: React.FC<DoubleChevronIconProps>;
6
+ export {};
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ interface DualRangeSliderProps {
3
+ min: number;
4
+ max: number;
5
+ startValue: number;
6
+ endValue: number;
7
+ onStartChange: (value: number) => void;
8
+ onEndChange: (value: number) => void;
9
+ label?: string;
10
+ }
11
+ export declare const DualRangeSlider: React.FC<DualRangeSliderProps>;
12
+ export {};
@@ -0,0 +1,22 @@
1
+ import { default as React } from 'react';
2
+ export interface LogoOption {
3
+ id: string;
4
+ url: string;
5
+ label: string;
6
+ type: 'primary' | 'secondary' | 'custom';
7
+ }
8
+ interface GlobalBranding {
9
+ logoPrimary: string;
10
+ logoSecondary: string;
11
+ }
12
+ interface LogoPickerProps {
13
+ availableLogos: LogoOption[];
14
+ currentLogoUrl?: string;
15
+ currentLogoType?: string;
16
+ globalBranding?: GlobalBranding;
17
+ onSelect: (logoUrl: string, logoType: string) => void;
18
+ showNoneOption?: boolean;
19
+ disabled?: boolean;
20
+ }
21
+ export declare const LogoPicker: React.FC<LogoPickerProps>;
22
+ export {};
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ interface LogoUploadProps {
3
+ label: string;
4
+ currentUrl: string;
5
+ onUrlChange: (url: string) => void;
6
+ }
7
+ export declare const LogoUpload: React.FC<LogoUploadProps>;
8
+ export {};
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ interface RangeSliderProps {
3
+ min: number;
4
+ max: number;
5
+ value: number;
6
+ onChange: (value: number) => void;
7
+ label?: string;
8
+ step?: number;
9
+ unit?: string;
10
+ displayValue?: (value: number) => string;
11
+ }
12
+ export declare const RangeSlider: React.FC<RangeSliderProps>;
13
+ export {};
@@ -0,0 +1,27 @@
1
+ import { TimelineScene, GlobalBranding, CompositionDefaults } from '../types/template';
2
+ interface SceneTimelineProps {
3
+ scenes: TimelineScene[];
4
+ selectedSceneId: string | null;
5
+ onSceneSelect: (sceneId: string) => void;
6
+ onSceneReorder: (fromIndex: number, toIndex: number) => void;
7
+ onSceneRemove: (sceneId: string) => void;
8
+ onSceneAdd: (position: number, sceneType: SceneOption) => void;
9
+ onSceneDuplicate: (sceneId: string) => void;
10
+ onSceneTransitionUpdate: (sceneId: string, transition: 'Fade' | 'Wipe' | 'Slide' | 'None', transitionDuration?: number) => void;
11
+ onSceneAudioUpdate: (sceneId: string, audioGain: number, muted: boolean) => void;
12
+ onScenePlaybackSpeedUpdate: (sceneId: string, playbackSpeed: number) => void;
13
+ onSceneLockToggle: (sceneId: string) => void;
14
+ onSceneDurationUpdate: (sceneId: string, durationInFrames: number) => void;
15
+ globalBranding: GlobalBranding;
16
+ compositionDefaults: CompositionDefaults;
17
+ devMode?: boolean;
18
+ }
19
+ interface SceneOption {
20
+ type: string;
21
+ designId: string;
22
+ label: string;
23
+ description: string;
24
+ thumbnail: string;
25
+ }
26
+ export declare const SceneTimeline: React.FC<SceneTimelineProps>;
27
+ export {};
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ import { VideoTemplate } from '../types/template';
3
+ interface TemplateEditorProps {
4
+ template: VideoTemplate;
5
+ selectedSceneId: string | null;
6
+ onTemplateChange: (template: VideoTemplate) => void;
7
+ onClearSelection: () => void;
8
+ onAspectRatioChange?: (aspectRatio: '16:9' | '9:16') => void;
9
+ onOpenMediaLibrary?: (sceneId: string, propPath: string, mediaType: 'video' | 'image', options?: {
10
+ photoIndex?: number;
11
+ isMultiple?: boolean;
12
+ }) => void;
13
+ }
14
+ export declare const TemplateEditor: React.FC<TemplateEditorProps>;
15
+ export {};
@@ -0,0 +1,257 @@
1
+ declare const _default: {
2
+ "id": "c2ae73ef-1fd1-4325-afd1-264e56ee1898",
3
+ "eventId": "cfb522c9-3d91-4e7f-b1cf-c10474befaef",
4
+ "eventType": "Live Event Graduation",
5
+ "eventName": "Ceremony 2",
6
+ "compositionDefaults": {
7
+ "fps": 30,
8
+ "width": 1920,
9
+ "height": 1080,
10
+ "aspectRatio": "16:9",
11
+ "totalFrames": 1114,
12
+ "devMode": true
13
+ },
14
+ "globalBranding": {
15
+ "institutionName": "Stageclip Scene Demo",
16
+ "brandColor1": "#2c6288",
17
+ "brandColor2": "#1dab57",
18
+ "brandColor3": "#ffffff",
19
+ "fontFamily": "'Oswald', sans-serif",
20
+ "fontSize": 16,
21
+ "lineSpacing": 75,
22
+ "logoPrimary": "https://stageclip.com/wp-content/uploads/2023/04/SC_Full_logo.png",
23
+ "logoSecondary": "https://media.licdn.com/dms/image/v2/C560BAQEagp_YxJj2cw/company-logo_200_200/company-logo_200_200/0/1656943101553/stageclip_logo?e=2147483647&v=beta&t=B9TT6W1vJTCIB-UDcSOKVQ1PBX69NcjA7Pfn6DeCUrc",
24
+ "socialMedia": {
25
+ "websiteUrl": "Stageclip.com",
26
+ "contactLine": "Sample Clip",
27
+ "instagramHandle": "@Stageclip",
28
+ "hashtag": "#ClassOf2026"
29
+ },
30
+ "musicUrl": "https://clippingplatformprod.blob.core.windows.net/assets/music/9d8bc349-c9ff-42e1-8295-ed79686f7f89/ed3bcd44-a259-411c-b47a-6069be46005a.wav?",
31
+ "musicVolume": 0.14
32
+ },
33
+ "participantData": {
34
+ "participantId": "jordan_francis_903",
35
+ "participantName": "Jordan Lauretta Francis",
36
+ "participantMessage": "Thank you mom & dad!",
37
+ "participantPhoto": "https://storage.googleapis.com/azvp_demo_assets/Generic_Graduate_Photo.jpg",
38
+ "firstName": "Jordan",
39
+ "lastName": "Lauretta Francis",
40
+ "participantSubtitle": "BS in Business Administration",
41
+ "participantSecondSubtitle": "Suma Cum Laude",
42
+ "participantLiveAudioUrl": "https://remotionlambda-jfkbnf6jjh.s3.eu-west-1.amazonaws.com/participant-previews/01c2b760-8c66-4c3f-acf4-6808f1a286a8/5d8dcfc6-4857-40e2-8be4-f7be9fdf07c5/audio.wav",
43
+ "participantLiveVideoUrl": "https://storage.googleapis.com/azvp_demo_assets/Generic_Graduate_Stagewalk.mp4",
44
+ "participantVideoMessageUrl": "https://storage.googleapis.com/azvp_demo_assets/Generic_Graduate_Selfie.mp4",
45
+ "slowMotionVideoEnabled": true,
46
+ "replaySpeed": 0.7,
47
+ "studentAudioVolume": 1
48
+ },
49
+ "timeline": [
50
+ {
51
+ "id": "scene_1770095297588",
52
+ "type": "Intro",
53
+ "designId": "TextOnlyIntro",
54
+ "durationInFrames": 90,
55
+ "componentProps": {
56
+ "bgColor": "$globalBranding.brandColor3",
57
+ "accentColor": "#1dab57",
58
+ "fontColor": "$globalBranding.brandColor1",
59
+ "fontFamily": "'Oswald', sans-serif",
60
+ "logoUrl": "https://stageclip.com/wp-content/uploads/2023/04/SC_Full_logo.png",
61
+ "logoType": "primary",
62
+ "Line1": "Proudly Presents",
63
+ "Line2": "The Class of 2026",
64
+ "Line3": ""
65
+ },
66
+ "styleProps": {
67
+ "textPaddingLeft": 150
68
+ }
69
+ },
70
+ {
71
+ "id": "scene_1767326729567",
72
+ "type": "Student_Clip",
73
+ "designId": "TextOverVideo",
74
+ "durationInFrames": 350,
75
+ "componentProps": {
76
+ "bgColor": "$globalBranding.brandColor1",
77
+ "accentColor": "$globalBranding.brandColor1",
78
+ "fontColor": "$globalBranding.brandColor3",
79
+ "fontFamily": "'Oswald', sans-serif",
80
+ "logoUrl": "https://stageclip.com/wp-content/uploads/2023/04/SC_Full_logo.png",
81
+ "logoType": "primary",
82
+ "textAlignment": "left",
83
+ "name": "$participantData.participantName",
84
+ "subtitle": "$participantData.participantSubtitle",
85
+ "videoUrl": "https://storage.googleapis.com/azvp_demo_assets/Generic_Graduate_Stagewalk.mp4",
86
+ "trimStartFrame": 0,
87
+ "trimEndFrame": 240,
88
+ "playbackSpeed": 0.7,
89
+ "participantAudioUrl": "https://remotionlambda-jfkbnf6jjh.s3.eu-west-1.amazonaws.com/participant-previews/01c2b760-8c66-4c3f-acf4-6808f1a286a8/5d8dcfc6-4857-40e2-8be4-f7be9fdf07c5/audio.wav",
90
+ "videoDurationInFrames": 240,
91
+ "lower3rdStyle": "style1",
92
+ "subtitle2": "$participantData.participantSecondSubtitle"
93
+ },
94
+ "styleProps": {
95
+ "textPaddingLeft": 150,
96
+ "footageScale": 95,
97
+ "footagePosX": 0
98
+ },
99
+ "fadeOut": 17,
100
+ "fadeInColor": "#2c6288",
101
+ "fadeOutColor": "#000000",
102
+ "advancedPositioning": {
103
+ "16:9": {
104
+ "footage": {
105
+ "x": 0,
106
+ "y": 0,
107
+ "scale": 1.3
108
+ },
109
+ "logoUrl": "",
110
+ "logoType": "custom",
111
+ "textBlock": {
112
+ "x": 0,
113
+ "y": -17.28,
114
+ "scale": 1.28,
115
+ "fontSizeScale": 0.8
116
+ }
117
+ },
118
+ "9:16": {
119
+ "logoUrl": "",
120
+ "logoType": "custom",
121
+ "footage": {
122
+ "x": 0,
123
+ "y": -121,
124
+ "scale": 2
125
+ },
126
+ "textBlock": {
127
+ "x": 0,
128
+ "y": -109.44,
129
+ "scale": 1.42,
130
+ "fontSizeScale": 1.14
131
+ }
132
+ }
133
+ },
134
+ "transition": "Fade",
135
+ "transitionDuration": 30
136
+ },
137
+ {
138
+ "id": "scene_1770094174974",
139
+ "type": "StudentPhoto",
140
+ "designId": "StudentPhoto",
141
+ "durationInFrames": 90,
142
+ "componentProps": {
143
+ "bgColor": "#ffffff",
144
+ "fontColor": "#000000",
145
+ "fontFamily": "'Oswald', sans-serif",
146
+ "name": "$participantData.participantName",
147
+ "subtitle": "$participantData.participantSubtitle",
148
+ "subtitle2": "$participantData.participantSecondSubtitle",
149
+ "photoUrl": "https://storage.googleapis.com/azvp_demo_assets/Generic_Graduate_Photo.jpg",
150
+ "textAlignment": "left"
151
+ },
152
+ "styleProps": {},
153
+ "advancedPositioning": {
154
+ "16:9": {
155
+ "textBlock": {
156
+ "x": 0,
157
+ "y": -168.48,
158
+ "scale": 0.86,
159
+ "fontSizeScale": 0.86
160
+ }
161
+ },
162
+ "9:16": {
163
+ "textBlock": {
164
+ "x": 0,
165
+ "y": -215.03999999999996,
166
+ "scale": 0.8,
167
+ "fontSizeScale": 0.62
168
+ }
169
+ }
170
+ }
171
+ },
172
+ {
173
+ "id": "scene_1770095491420",
174
+ "type": "Message",
175
+ "designId": "PhotoAndTextOverlay",
176
+ "durationInFrames": 90,
177
+ "componentProps": {
178
+ "bgColor": "$globalBranding.brandColor1",
179
+ "accentColor": "#1dab57",
180
+ "fontColor": "$globalBranding.brandColor3",
181
+ "fontFamily": "'Oswald', sans-serif",
182
+ "logoUrl": "https://stageclip.com/wp-content/uploads/2023/04/SC_Full_logo.png",
183
+ "logoType": "primary",
184
+ "Line1": "New Scene",
185
+ "Line2": "Edit me",
186
+ "Line3": "Add your content",
187
+ "messageText": "$participantData.participantMessage",
188
+ "name": "$participantData.firstName"
189
+ },
190
+ "styleProps": {
191
+ "textPaddingLeft": 150
192
+ }
193
+ },
194
+ {
195
+ "id": "scene_1770094232781",
196
+ "type": "Student_Clip",
197
+ "designId": "TextOverVideoReplay",
198
+ "durationInFrames": 240,
199
+ "componentProps": {
200
+ "bgColor": "#ffffff",
201
+ "accentColor": "#2c6288",
202
+ "fontColor": "#1dab57",
203
+ "fontFamily": "'Oswald', sans-serif",
204
+ "logoUrl": "https://stageclip.com/wp-content/uploads/2023/04/SC_Full_logo.png",
205
+ "logoType": "primary",
206
+ "textAlignment": "left",
207
+ "name": "Your Name",
208
+ "subtitle": "Your Subtitle",
209
+ "videoUrl": "https://storage.googleapis.com/azvp_demo_assets/Generic_Graduate_Stagewalk.mp4",
210
+ "videoDurationInFrames": 240,
211
+ "trimStartFrame": 0,
212
+ "trimEndFrame": 240,
213
+ "playbackSpeed": 1
214
+ },
215
+ "styleProps": {
216
+ "textPaddingLeft": 150,
217
+ "footageScale": 95,
218
+ "footagePosX": 0
219
+ },
220
+ "muted": true
221
+ },
222
+ {
223
+ "id": "scene_1770095576171",
224
+ "type": "Outro",
225
+ "designId": "SocialMediaCTA",
226
+ "durationInFrames": 90,
227
+ "componentProps": {
228
+ "bgColor": "$globalBranding.brandColor3",
229
+ "accentColor": "#1dab57",
230
+ "fontColor": "$globalBranding.brandColor1",
231
+ "fontFamily": "'Oswald', sans-serif",
232
+ "logoUrl": "https://stageclip.com/wp-content/uploads/2023/04/SC_Full_logo.png",
233
+ "logoType": "primary",
234
+ "websiteUrl": "Congratulations!",
235
+ "contactLine": "$globalBranding.socialMedia.websiteUrl",
236
+ "instagramHandle": "$globalBranding.socialMedia.instagramHandle"
237
+ },
238
+ "styleProps": {}
239
+ },
240
+ {
241
+ "id": "scene_1767102710826",
242
+ "type": "StageclipLogo",
243
+ "designId": "StageclipLogo",
244
+ "durationInFrames": 164,
245
+ "componentProps": {
246
+ "videoUrl": "https://storage.googleapis.com/azvp_demo_assets/Stageclip_Logo_Over_White.mp4",
247
+ "bgColor": "#ffffff",
248
+ "videoDurationInFrames": 164,
249
+ "trimStartFrame": 0,
250
+ "trimEndFrame": 164
251
+ },
252
+ "styleProps": {}
253
+ }
254
+ ]
255
+ };
256
+
257
+ export default _default;
@@ -0,0 +1,17 @@
1
+ export { TemplateEditor } from './components/TemplateEditor';
2
+ export { RemotionPlayer } from './RemotionPlayer';
3
+ export { ColorPicker } from './components/ColorPicker';
4
+ export { DualRangeSlider } from './components/DualRangeSlider';
5
+ export { LogoPicker } from './components/LogoPicker';
6
+ export type { LogoOption } from './components/LogoPicker';
7
+ export { RangeSlider } from './components/RangeSlider';
8
+ export { SceneTimeline } from './components/SceneTimeline';
9
+ export { BackgroundUpload } from './components/BackgroundUpload';
10
+ export { LogoUpload } from './components/LogoUpload';
11
+ export type { VideoTemplate, CompositionDefaults, GlobalBranding, SocialMedia, ParticipantData, } from './types/template';
12
+ export { GOOGLE_FONTS, loadGoogleFont, getFontFamilyString, extractFontNameFromFamilyString, } from './utils/googleFonts';
13
+ export type { GoogleFont } from './utils/googleFonts';
14
+ export { calculateSceneDuration } from './utils/sceneDurationCalculator';
15
+ export { colors, fontFamily } from './theme';
16
+ export { TrimPreviewVideo } from './remotion/TrimPreviewVideo';
17
+ export { LOWER_THIRDS_LIBRARY } from './remotion/classic_theme/lower3rds';
@@ -0,0 +1,7 @@
1
+ import { default as React } from 'react';
2
+ interface DevModeOverlayProps {
3
+ sceneDurationInFrames: number;
4
+ videoUrl?: string;
5
+ }
6
+ export declare const DevModeOverlay: React.FC<DevModeOverlayProps>;
7
+ export {};
@@ -0,0 +1,13 @@
1
+ import { ReactNode } from 'react';
2
+ interface FadeWrapperProps {
3
+ children: ReactNode;
4
+ fadeIn?: number;
5
+ fadeOut?: number;
6
+ sceneDurationInFrames: number;
7
+ fadeInColor?: string;
8
+ fadeOutColor?: string;
9
+ fadeColor?: string;
10
+ backgroundColor?: string;
11
+ }
12
+ export declare const FadeWrapper: React.FC<FadeWrapperProps>;
13
+ export {};
@@ -0,0 +1,18 @@
1
+ import { VideoTemplate } from '../types/template';
2
+ export interface GraduationVideoProps {
3
+ template?: VideoTemplate;
4
+ totalFrames?: number;
5
+ devMode?: boolean;
6
+ }
7
+ export interface DynamicMusicVolumeProps {
8
+ musicUrl: string;
9
+ baseVolume: number;
10
+ framePositions: Array<{
11
+ sceneId: string;
12
+ startFrame: number;
13
+ endFrame: number;
14
+ }>;
15
+ timeline: VideoTemplate['timeline'];
16
+ participantData: VideoTemplate['participantData'];
17
+ }
18
+ export declare const GraduationVideo: React.FC<GraduationVideoProps>;
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ interface TransitionWrapperProps {
3
+ children: ReactNode;
4
+ transition?: 'Fade' | 'Wipe' | 'Slide' | 'None';
5
+ transitionDuration?: number;
6
+ isEntering: boolean;
7
+ }
8
+ export declare const TransitionWrapper: React.FC<TransitionWrapperProps>;
9
+ export {};
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Minimal composition for the Replace Footage modal - shows only the video clip
3
+ * with the current trim range so users can visually preview while trimming.
4
+ */
5
+ export interface TrimPreviewVideoProps {
6
+ videoUrl: string;
7
+ trimStartFrame: number;
8
+ trimEndFrame: number;
9
+ }
10
+ export declare const TrimPreviewVideo: React.FC<TrimPreviewVideoProps>;
@@ -0,0 +1 @@
1
+ export declare const RemotionRoot: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,18 @@
1
+ import { Lower3rdBars } from './lower3rd_bars';
2
+ import { Lower3rdBlackBar } from './lower3rd_blackBar';
3
+ import { Lower3rdClassicColor } from './lower3rd_classicColor';
4
+ import { Lower3rdClassicWhite } from './lower3rd_classicWhite';
5
+ import { Lower3rdStyle1 } from './lower3rd_style1';
6
+ import { Lower3rdStyle2 } from './lower3rd_style2';
7
+ import { Lower3rdStyle3 } from './lower3rd_style3';
8
+ import { Lower3rdStyle4 } from './lower3rd_style4';
9
+ import { Lower3rdStyle5 } from './lower3rd_style5';
10
+ import { Lower3rdTextOnly } from './lower3rd_Text_Only';
11
+ export interface Lower3rdOption {
12
+ id: string;
13
+ name: string;
14
+ component: React.FC<any>;
15
+ thumbnail?: string;
16
+ }
17
+ export declare const LOWER_THIRDS_LIBRARY: Lower3rdOption[];
18
+ export { Lower3rdStyle1, Lower3rdStyle2, Lower3rdTextOnly, Lower3rdStyle3, Lower3rdStyle4, Lower3rdStyle5, Lower3rdClassicWhite, Lower3rdClassicColor, Lower3rdBars, Lower3rdBlackBar, };
@@ -0,0 +1,12 @@
1
+ interface Lower3rdTextOnlyProps {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdTextOnly: React.FC<Lower3rdTextOnlyProps>;
12
+ export {};
@@ -0,0 +1,13 @@
1
+ interface Lower3rdBarsProps {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ secondaryColor?: string;
11
+ }
12
+ export declare const Lower3rdBars: React.FC<Lower3rdBarsProps>;
13
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdBlackBarProps {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdBlackBar: React.FC<Lower3rdBlackBarProps>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdClassicColorProps {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdClassicColor: React.FC<Lower3rdClassicColorProps>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdClassicWhiteProps {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdClassicWhite: React.FC<Lower3rdClassicWhiteProps>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdStyle1Props {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdStyle1: React.FC<Lower3rdStyle1Props>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdStyle2Props {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdStyle2: React.FC<Lower3rdStyle2Props>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdStyle3Props {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdStyle3: React.FC<Lower3rdStyle3Props>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdStyle4Props {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdStyle4: React.FC<Lower3rdStyle4Props>;
12
+ export {};
@@ -0,0 +1,12 @@
1
+ interface Lower3rdStyle5Props {
2
+ name: string;
3
+ subtitle?: string;
4
+ subtitle2?: string;
5
+ accentColor: string;
6
+ fontColor: string;
7
+ fontFamily?: string;
8
+ textAlignment?: 'left' | 'center' | 'right';
9
+ fontSizeScale?: number;
10
+ }
11
+ export declare const Lower3rdStyle5: React.FC<Lower3rdStyle5Props>;
12
+ export {};