
/**
 */
namespace _zeitbild
{
	
	/**
	 */
	export enum enum_access_level {
		none,
		view,
		edit,
		admin
	}
	
	
	/**
	 */
	export type type_user_id = int;
	
	
	/**
	 */
	export type type_user_object = {
		name : string;
		email_address : (
			null
			|
			string
		);
	};
	
	
	/**
	 */
	export type type_event_object = {
		name : string;
		begin : lib_plankton.pit.type_datetime;
		end : (
			null
			|
			lib_plankton.pit.type_datetime
		);
		location : (
			null
			|
			string
		);
		link : (
			null
			|
			string
		);
		description : (
			null
			|
			string
		);
	};
	
	
	/**
	 */
	export type type_local_resource_event_id = int;
	
	
	/**
	 */
	export type type_resource_id = int;
	
	
	/**
	 */
	export type type_resource_object = (
		{
			kind : "local";
			data : {
				event_ids : Array<
					type_local_resource_event_id
				>;
			};
		}
		|
		{
			kind : "caldav";
			data : {
				url : string;
				read_only : boolean;
				from_fucked_up_wordpress : boolean;
			};
		}
	);
	
	
	/**
	 */
	export type type_calendar_id = int;
	
	
	/**
	 */
	export type type_calendar_object = {
		name : string;
		access : {
			public : boolean;
			default_level : enum_access_level;
			attributed : lib_plankton.map.type_map<
				type_user_id,
				enum_access_level
			>;
		};
		resource_id : type_resource_id;
	};
	
}
