// Code generated by msgraph.go/gen DO NOT EDIT.

package msgraph

import "time"

// Planner undocumented
type Planner struct {
	// Entity is the base model of Planner
	Entity
	// Tasks undocumented
	Tasks []PlannerTask `json:"tasks,omitempty"`
	// Plans undocumented
	Plans []PlannerPlan `json:"plans,omitempty"`
	// Buckets undocumented
	Buckets []PlannerBucket `json:"buckets,omitempty"`
}

// PlannerAppliedCategories undocumented
type PlannerAppliedCategories struct {
	// Object is the base model of PlannerAppliedCategories
	Object
}

// PlannerAssignedToTaskBoardTaskFormat undocumented
type PlannerAssignedToTaskBoardTaskFormat struct {
	// PlannerDelta is the base model of PlannerAssignedToTaskBoardTaskFormat
	PlannerDelta
	// UnassignedOrderHint undocumented
	UnassignedOrderHint *string `json:"unassignedOrderHint,omitempty"`
	// OrderHintsByAssignee undocumented
	OrderHintsByAssignee *PlannerOrderHintsByAssignee `json:"orderHintsByAssignee,omitempty"`
}

// PlannerAssignment undocumented
type PlannerAssignment struct {
	// Object is the base model of PlannerAssignment
	Object
	// AssignedBy undocumented
	AssignedBy *IdentitySet `json:"assignedBy,omitempty"`
	// AssignedDateTime undocumented
	AssignedDateTime *time.Time `json:"assignedDateTime,omitempty"`
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
}

// PlannerAssignments undocumented
type PlannerAssignments struct {
	// Object is the base model of PlannerAssignments
	Object
}

// PlannerBucket undocumented
type PlannerBucket struct {
	// PlannerDelta is the base model of PlannerBucket
	PlannerDelta
	// Name undocumented
	Name *string `json:"name,omitempty"`
	// PlanID undocumented
	PlanID *string `json:"planId,omitempty"`
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
	// Tasks undocumented
	Tasks []PlannerTask `json:"tasks,omitempty"`
}

// PlannerBucketTaskBoardTaskFormat undocumented
type PlannerBucketTaskBoardTaskFormat struct {
	// PlannerDelta is the base model of PlannerBucketTaskBoardTaskFormat
	PlannerDelta
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
}

// PlannerCategoryDescriptions undocumented
type PlannerCategoryDescriptions struct {
	// Object is the base model of PlannerCategoryDescriptions
	Object
	// Category1 undocumented
	Category1 *string `json:"category1,omitempty"`
	// Category2 undocumented
	Category2 *string `json:"category2,omitempty"`
	// Category3 undocumented
	Category3 *string `json:"category3,omitempty"`
	// Category4 undocumented
	Category4 *string `json:"category4,omitempty"`
	// Category5 undocumented
	Category5 *string `json:"category5,omitempty"`
	// Category6 undocumented
	Category6 *string `json:"category6,omitempty"`
}

// PlannerChecklistItem undocumented
type PlannerChecklistItem struct {
	// Object is the base model of PlannerChecklistItem
	Object
	// IsChecked undocumented
	IsChecked *bool `json:"isChecked,omitempty"`
	// Title undocumented
	Title *string `json:"title,omitempty"`
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
	// LastModifiedBy undocumented
	LastModifiedBy *IdentitySet `json:"lastModifiedBy,omitempty"`
	// LastModifiedDateTime undocumented
	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
}

// PlannerChecklistItems undocumented
type PlannerChecklistItems struct {
	// Object is the base model of PlannerChecklistItems
	Object
}

// PlannerDelta undocumented
type PlannerDelta struct {
	// Entity is the base model of PlannerDelta
	Entity
}

// PlannerExternalReference undocumented
type PlannerExternalReference struct {
	// Object is the base model of PlannerExternalReference
	Object
	// Alias undocumented
	Alias *string `json:"alias,omitempty"`
	// Type undocumented
	Type *string `json:"type,omitempty"`
	// PreviewPriority undocumented
	PreviewPriority *string `json:"previewPriority,omitempty"`
	// LastModifiedBy undocumented
	LastModifiedBy *IdentitySet `json:"lastModifiedBy,omitempty"`
	// LastModifiedDateTime undocumented
	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
}

// PlannerExternalReferences undocumented
type PlannerExternalReferences struct {
	// Object is the base model of PlannerExternalReferences
	Object
}

// PlannerFavoritePlanReference undocumented
type PlannerFavoritePlanReference struct {
	// Object is the base model of PlannerFavoritePlanReference
	Object
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
	// PlanTitle undocumented
	PlanTitle *string `json:"planTitle,omitempty"`
}

// PlannerFavoritePlanReferenceCollection undocumented
type PlannerFavoritePlanReferenceCollection struct {
	// Object is the base model of PlannerFavoritePlanReferenceCollection
	Object
}

// PlannerGroup undocumented
type PlannerGroup struct {
	// Entity is the base model of PlannerGroup
	Entity
	// Plans undocumented
	Plans []PlannerPlan `json:"plans,omitempty"`
}

// PlannerOrderHintsByAssignee undocumented
type PlannerOrderHintsByAssignee struct {
	// Object is the base model of PlannerOrderHintsByAssignee
	Object
}

// PlannerPlan undocumented
type PlannerPlan struct {
	// PlannerDelta is the base model of PlannerPlan
	PlannerDelta
	// CreatedBy undocumented
	CreatedBy *IdentitySet `json:"createdBy,omitempty"`
	// CreatedDateTime undocumented
	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
	// Owner undocumented
	Owner *string `json:"owner,omitempty"`
	// Title undocumented
	Title *string `json:"title,omitempty"`
	// Contexts undocumented
	Contexts *PlannerPlanContextCollection `json:"contexts,omitempty"`
	// Tasks undocumented
	Tasks []PlannerTask `json:"tasks,omitempty"`
	// Buckets undocumented
	Buckets []PlannerBucket `json:"buckets,omitempty"`
	// Details undocumented
	Details *PlannerPlanDetails `json:"details,omitempty"`
}

// PlannerPlanContext undocumented
type PlannerPlanContext struct {
	// Object is the base model of PlannerPlanContext
	Object
	// AssociationType undocumented
	AssociationType *string `json:"associationType,omitempty"`
	// CreatedDateTime undocumented
	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
	// DisplayNameSegments undocumented
	DisplayNameSegments []string `json:"displayNameSegments,omitempty"`
	// OwnerAppID undocumented
	OwnerAppID *string `json:"ownerAppId,omitempty"`
}

// PlannerPlanContextCollection undocumented
type PlannerPlanContextCollection struct {
	// Object is the base model of PlannerPlanContextCollection
	Object
}

// PlannerPlanContextDetails undocumented
type PlannerPlanContextDetails struct {
	// Object is the base model of PlannerPlanContextDetails
	Object
	// URL undocumented
	URL *string `json:"url,omitempty"`
}

// PlannerPlanContextDetailsCollection undocumented
type PlannerPlanContextDetailsCollection struct {
	// Object is the base model of PlannerPlanContextDetailsCollection
	Object
}

// PlannerPlanDetails undocumented
type PlannerPlanDetails struct {
	// PlannerDelta is the base model of PlannerPlanDetails
	PlannerDelta
	// SharedWith undocumented
	SharedWith *PlannerUserIDs `json:"sharedWith,omitempty"`
	// CategoryDescriptions undocumented
	CategoryDescriptions *PlannerCategoryDescriptions `json:"categoryDescriptions,omitempty"`
	// ContextDetails undocumented
	ContextDetails *PlannerPlanContextDetailsCollection `json:"contextDetails,omitempty"`
}

// PlannerProgressTaskBoardTaskFormat undocumented
type PlannerProgressTaskBoardTaskFormat struct {
	// PlannerDelta is the base model of PlannerProgressTaskBoardTaskFormat
	PlannerDelta
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
}

// PlannerRecentPlanReference undocumented
type PlannerRecentPlanReference struct {
	// Object is the base model of PlannerRecentPlanReference
	Object
	// LastAccessedDateTime undocumented
	LastAccessedDateTime *time.Time `json:"lastAccessedDateTime,omitempty"`
	// PlanTitle undocumented
	PlanTitle *string `json:"planTitle,omitempty"`
}

// PlannerRecentPlanReferenceCollection undocumented
type PlannerRecentPlanReferenceCollection struct {
	// Object is the base model of PlannerRecentPlanReferenceCollection
	Object
}

// PlannerTask undocumented
type PlannerTask struct {
	// PlannerDelta is the base model of PlannerTask
	PlannerDelta
	// CreatedBy undocumented
	CreatedBy *IdentitySet `json:"createdBy,omitempty"`
	// PlanID undocumented
	PlanID *string `json:"planId,omitempty"`
	// BucketID undocumented
	BucketID *string `json:"bucketId,omitempty"`
	// Title undocumented
	Title *string `json:"title,omitempty"`
	// OrderHint undocumented
	OrderHint *string `json:"orderHint,omitempty"`
	// AssigneePriority undocumented
	AssigneePriority *string `json:"assigneePriority,omitempty"`
	// PercentComplete undocumented
	PercentComplete *int `json:"percentComplete,omitempty"`
	// Priority undocumented
	Priority *int `json:"priority,omitempty"`
	// StartDateTime undocumented
	StartDateTime *time.Time `json:"startDateTime,omitempty"`
	// CreatedDateTime undocumented
	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
	// DueDateTime undocumented
	DueDateTime *time.Time `json:"dueDateTime,omitempty"`
	// HasDescription undocumented
	HasDescription *bool `json:"hasDescription,omitempty"`
	// PreviewType undocumented
	PreviewType *PlannerPreviewType `json:"previewType,omitempty"`
	// CompletedDateTime undocumented
	CompletedDateTime *time.Time `json:"completedDateTime,omitempty"`
	// CompletedBy undocumented
	CompletedBy *IdentitySet `json:"completedBy,omitempty"`
	// ReferenceCount undocumented
	ReferenceCount *int `json:"referenceCount,omitempty"`
	// ChecklistItemCount undocumented
	ChecklistItemCount *int `json:"checklistItemCount,omitempty"`
	// ActiveChecklistItemCount undocumented
	ActiveChecklistItemCount *int `json:"activeChecklistItemCount,omitempty"`
	// AppliedCategories undocumented
	AppliedCategories *PlannerAppliedCategories `json:"appliedCategories,omitempty"`
	// Assignments undocumented
	Assignments *PlannerAssignments `json:"assignments,omitempty"`
	// ConversationThreadID undocumented
	ConversationThreadID *string `json:"conversationThreadId,omitempty"`
	// Details undocumented
	Details *PlannerTaskDetails `json:"details,omitempty"`
	// AssignedToTaskBoardFormat undocumented
	AssignedToTaskBoardFormat *PlannerAssignedToTaskBoardTaskFormat `json:"assignedToTaskBoardFormat,omitempty"`
	// ProgressTaskBoardFormat undocumented
	ProgressTaskBoardFormat *PlannerProgressTaskBoardTaskFormat `json:"progressTaskBoardFormat,omitempty"`
	// BucketTaskBoardFormat undocumented
	BucketTaskBoardFormat *PlannerBucketTaskBoardTaskFormat `json:"bucketTaskBoardFormat,omitempty"`
}

// PlannerTaskDetails undocumented
type PlannerTaskDetails struct {
	// PlannerDelta is the base model of PlannerTaskDetails
	PlannerDelta
	// Description undocumented
	Description *string `json:"description,omitempty"`
	// PreviewType undocumented
	PreviewType *PlannerPreviewType `json:"previewType,omitempty"`
	// References undocumented
	References *PlannerExternalReferences `json:"references,omitempty"`
	// Checklist undocumented
	Checklist *PlannerChecklistItems `json:"checklist,omitempty"`
}

// PlannerUser undocumented
type PlannerUser struct {
	// PlannerDelta is the base model of PlannerUser
	PlannerDelta
	// FavoritePlanReferences undocumented
	FavoritePlanReferences *PlannerFavoritePlanReferenceCollection `json:"favoritePlanReferences,omitempty"`
	// RecentPlanReferences undocumented
	RecentPlanReferences *PlannerRecentPlanReferenceCollection `json:"recentPlanReferences,omitempty"`
	// Tasks undocumented
	Tasks []PlannerTask `json:"tasks,omitempty"`
	// Plans undocumented
	Plans []PlannerPlan `json:"plans,omitempty"`
	// FavoritePlans undocumented
	FavoritePlans []PlannerPlan `json:"favoritePlans,omitempty"`
	// RecentPlans undocumented
	RecentPlans []PlannerPlan `json:"recentPlans,omitempty"`
	// All undocumented
	All []PlannerDelta `json:"all,omitempty"`
}

// PlannerUserIDs undocumented
type PlannerUserIDs struct {
	// Object is the base model of PlannerUserIDs
	Object
}
