mirror of
				https://github.com/owncast/owncast.git
				synced 2025-11-04 13:27:21 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
export interface ClientConfig {
 | 
						|
  name: string;
 | 
						|
  title?: string;
 | 
						|
  summary: string;
 | 
						|
  offlineMessage?: string;
 | 
						|
  logo: string;
 | 
						|
  tags: string[];
 | 
						|
  version: string;
 | 
						|
  nsfw: boolean;
 | 
						|
  extraPageContent: string;
 | 
						|
  socialHandles: SocialHandle[];
 | 
						|
  chatDisabled: boolean;
 | 
						|
  externalActions: any[];
 | 
						|
  customStyles: string;
 | 
						|
  maxSocketPayloadSize: number;
 | 
						|
  federation: Federation;
 | 
						|
  notifications: Notifications;
 | 
						|
  authentication: Authentication;
 | 
						|
  socketHostOverride?: string;
 | 
						|
}
 | 
						|
 | 
						|
interface Authentication {
 | 
						|
  indieAuthEnabled: boolean;
 | 
						|
}
 | 
						|
 | 
						|
interface Federation {
 | 
						|
  enabled: boolean;
 | 
						|
  account: string;
 | 
						|
  followerCount: number;
 | 
						|
}
 | 
						|
 | 
						|
interface Notifications {
 | 
						|
  browser: Browser;
 | 
						|
}
 | 
						|
 | 
						|
interface Browser {
 | 
						|
  enabled: boolean;
 | 
						|
  publicKey: string;
 | 
						|
}
 | 
						|
 | 
						|
interface SocialHandle {
 | 
						|
  platform: string;
 | 
						|
  url: string;
 | 
						|
  icon: string;
 | 
						|
}
 | 
						|
 | 
						|
export function makeEmptyClientConfig(): ClientConfig {
 | 
						|
  return {
 | 
						|
    name: '',
 | 
						|
    summary: '',
 | 
						|
    offlineMessage: '',
 | 
						|
    logo: '',
 | 
						|
    tags: [],
 | 
						|
    version: '',
 | 
						|
    nsfw: false,
 | 
						|
    extraPageContent: '',
 | 
						|
    socialHandles: [],
 | 
						|
    chatDisabled: false,
 | 
						|
    externalActions: [],
 | 
						|
    customStyles: '',
 | 
						|
    maxSocketPayloadSize: 0,
 | 
						|
    federation: {
 | 
						|
      enabled: false,
 | 
						|
      account: '',
 | 
						|
      followerCount: 0,
 | 
						|
    },
 | 
						|
    notifications: {
 | 
						|
      browser: {
 | 
						|
        enabled: false,
 | 
						|
        publicKey: '',
 | 
						|
      },
 | 
						|
    },
 | 
						|
    authentication: {
 | 
						|
      indieAuthEnabled: false,
 | 
						|
    },
 | 
						|
  };
 | 
						|
}
 |