@@ -29,9 +29,13 @@ namespace GitHub.Copilot.SDK;
2929[ JsonDerivedType ( typeof ( AssistantTurnEndEvent ) , "assistant.turn_end" ) ]
3030[ JsonDerivedType ( typeof ( AssistantTurnStartEvent ) , "assistant.turn_start" ) ]
3131[ JsonDerivedType ( typeof ( AssistantUsageEvent ) , "assistant.usage" ) ]
32+ [ JsonDerivedType ( typeof ( ElicitationCompletedEvent ) , "elicitation.completed" ) ]
33+ [ JsonDerivedType ( typeof ( ElicitationRequestedEvent ) , "elicitation.requested" ) ]
3234[ JsonDerivedType ( typeof ( HookEndEvent ) , "hook.end" ) ]
3335[ JsonDerivedType ( typeof ( HookStartEvent ) , "hook.start" ) ]
3436[ JsonDerivedType ( typeof ( PendingMessagesModifiedEvent ) , "pending_messages.modified" ) ]
37+ [ JsonDerivedType ( typeof ( PermissionCompletedEvent ) , "permission.completed" ) ]
38+ [ JsonDerivedType ( typeof ( PermissionRequestedEvent ) , "permission.requested" ) ]
3539[ JsonDerivedType ( typeof ( SessionCompactionCompleteEvent ) , "session.compaction_complete" ) ]
3640[ JsonDerivedType ( typeof ( SessionCompactionStartEvent ) , "session.compaction_start" ) ]
3741[ JsonDerivedType ( typeof ( SessionContextChangedEvent ) , "session.context_changed" ) ]
@@ -64,6 +68,8 @@ namespace GitHub.Copilot.SDK;
6468[ JsonDerivedType ( typeof ( ToolExecutionProgressEvent ) , "tool.execution_progress" ) ]
6569[ JsonDerivedType ( typeof ( ToolExecutionStartEvent ) , "tool.execution_start" ) ]
6670[ JsonDerivedType ( typeof ( ToolUserRequestedEvent ) , "tool.user_requested" ) ]
71+ [ JsonDerivedType ( typeof ( UserInputCompletedEvent ) , "user_input.completed" ) ]
72+ [ JsonDerivedType ( typeof ( UserInputRequestedEvent ) , "user_input.requested" ) ]
6773[ JsonDerivedType ( typeof ( UserMessageEvent ) , "user.message" ) ]
6874public abstract partial class SessionEvent
6975{
@@ -645,6 +651,78 @@ public partial class SystemMessageEvent : SessionEvent
645651 public required SystemMessageData Data { get ; set ; }
646652}
647653
654+ /// <summary>
655+ /// Event: permission.requested
656+ /// </summary>
657+ public partial class PermissionRequestedEvent : SessionEvent
658+ {
659+ [ JsonIgnore ]
660+ public override string Type => "permission.requested" ;
661+
662+ [ JsonPropertyName ( "data" ) ]
663+ public required PermissionRequestedData Data { get ; set ; }
664+ }
665+
666+ /// <summary>
667+ /// Event: permission.completed
668+ /// </summary>
669+ public partial class PermissionCompletedEvent : SessionEvent
670+ {
671+ [ JsonIgnore ]
672+ public override string Type => "permission.completed" ;
673+
674+ [ JsonPropertyName ( "data" ) ]
675+ public required PermissionCompletedData Data { get ; set ; }
676+ }
677+
678+ /// <summary>
679+ /// Event: user_input.requested
680+ /// </summary>
681+ public partial class UserInputRequestedEvent : SessionEvent
682+ {
683+ [ JsonIgnore ]
684+ public override string Type => "user_input.requested" ;
685+
686+ [ JsonPropertyName ( "data" ) ]
687+ public required UserInputRequestedData Data { get ; set ; }
688+ }
689+
690+ /// <summary>
691+ /// Event: user_input.completed
692+ /// </summary>
693+ public partial class UserInputCompletedEvent : SessionEvent
694+ {
695+ [ JsonIgnore ]
696+ public override string Type => "user_input.completed" ;
697+
698+ [ JsonPropertyName ( "data" ) ]
699+ public required UserInputCompletedData Data { get ; set ; }
700+ }
701+
702+ /// <summary>
703+ /// Event: elicitation.requested
704+ /// </summary>
705+ public partial class ElicitationRequestedEvent : SessionEvent
706+ {
707+ [ JsonIgnore ]
708+ public override string Type => "elicitation.requested" ;
709+
710+ [ JsonPropertyName ( "data" ) ]
711+ public required ElicitationRequestedData Data { get ; set ; }
712+ }
713+
714+ /// <summary>
715+ /// Event: elicitation.completed
716+ /// </summary>
717+ public partial class ElicitationCompletedEvent : SessionEvent
718+ {
719+ [ JsonIgnore ]
720+ public override string Type => "elicitation.completed" ;
721+
722+ [ JsonPropertyName ( "data" ) ]
723+ public required ElicitationCompletedData Data { get ; set ; }
724+ }
725+
648726public partial class SessionStartData
649727{
650728 [ JsonPropertyName ( "sessionId" ) ]
@@ -1359,6 +1437,66 @@ public partial class SystemMessageData
13591437 public SystemMessageDataMetadata ? Metadata { get ; set ; }
13601438}
13611439
1440+ public partial class PermissionRequestedData
1441+ {
1442+ [ JsonPropertyName ( "requestId" ) ]
1443+ public required string RequestId { get ; set ; }
1444+
1445+ [ JsonPropertyName ( "permissionRequest" ) ]
1446+ public required object PermissionRequest { get ; set ; }
1447+ }
1448+
1449+ public partial class PermissionCompletedData
1450+ {
1451+ [ JsonPropertyName ( "requestId" ) ]
1452+ public required string RequestId { get ; set ; }
1453+ }
1454+
1455+ public partial class UserInputRequestedData
1456+ {
1457+ [ JsonPropertyName ( "requestId" ) ]
1458+ public required string RequestId { get ; set ; }
1459+
1460+ [ JsonPropertyName ( "question" ) ]
1461+ public required string Question { get ; set ; }
1462+
1463+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
1464+ [ JsonPropertyName ( "choices" ) ]
1465+ public string [ ] ? Choices { get ; set ; }
1466+
1467+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
1468+ [ JsonPropertyName ( "allowFreeform" ) ]
1469+ public bool ? AllowFreeform { get ; set ; }
1470+ }
1471+
1472+ public partial class UserInputCompletedData
1473+ {
1474+ [ JsonPropertyName ( "requestId" ) ]
1475+ public required string RequestId { get ; set ; }
1476+ }
1477+
1478+ public partial class ElicitationRequestedData
1479+ {
1480+ [ JsonPropertyName ( "requestId" ) ]
1481+ public required string RequestId { get ; set ; }
1482+
1483+ [ JsonPropertyName ( "message" ) ]
1484+ public required string Message { get ; set ; }
1485+
1486+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
1487+ [ JsonPropertyName ( "mode" ) ]
1488+ public string ? Mode { get ; set ; }
1489+
1490+ [ JsonPropertyName ( "requestedSchema" ) ]
1491+ public required ElicitationRequestedDataRequestedSchema RequestedSchema { get ; set ; }
1492+ }
1493+
1494+ public partial class ElicitationCompletedData
1495+ {
1496+ [ JsonPropertyName ( "requestId" ) ]
1497+ public required string RequestId { get ; set ; }
1498+ }
1499+
13621500public partial class SessionStartDataContext
13631501{
13641502 [ JsonPropertyName ( "cwd" ) ]
@@ -1773,6 +1911,19 @@ public partial class SystemMessageDataMetadata
17731911 public Dictionary < string , object > ? Variables { get ; set ; }
17741912}
17751913
1914+ public partial class ElicitationRequestedDataRequestedSchema
1915+ {
1916+ [ JsonPropertyName ( "type" ) ]
1917+ public required string Type { get ; set ; }
1918+
1919+ [ JsonPropertyName ( "properties" ) ]
1920+ public required Dictionary < string , object > Properties { get ; set ; }
1921+
1922+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
1923+ [ JsonPropertyName ( "required" ) ]
1924+ public string [ ] ? Required { get ; set ; }
1925+ }
1926+
17761927[ JsonConverter ( typeof ( JsonStringEnumConverter < SessionPlanChangedDataOperation > ) ) ]
17771928public enum SessionPlanChangedDataOperation
17781929{
@@ -1890,13 +2041,22 @@ public enum SystemMessageDataRole
18902041[ JsonSerializable ( typeof ( AssistantUsageDataCopilotUsage ) ) ]
18912042[ JsonSerializable ( typeof ( AssistantUsageDataCopilotUsageTokenDetailsItem ) ) ]
18922043[ JsonSerializable ( typeof ( AssistantUsageEvent ) ) ]
2044+ [ JsonSerializable ( typeof ( ElicitationCompletedData ) ) ]
2045+ [ JsonSerializable ( typeof ( ElicitationCompletedEvent ) ) ]
2046+ [ JsonSerializable ( typeof ( ElicitationRequestedData ) ) ]
2047+ [ JsonSerializable ( typeof ( ElicitationRequestedDataRequestedSchema ) ) ]
2048+ [ JsonSerializable ( typeof ( ElicitationRequestedEvent ) ) ]
18932049[ JsonSerializable ( typeof ( HookEndData ) ) ]
18942050[ JsonSerializable ( typeof ( HookEndDataError ) ) ]
18952051[ JsonSerializable ( typeof ( HookEndEvent ) ) ]
18962052[ JsonSerializable ( typeof ( HookStartData ) ) ]
18972053[ JsonSerializable ( typeof ( HookStartEvent ) ) ]
18982054[ JsonSerializable ( typeof ( PendingMessagesModifiedData ) ) ]
18992055[ JsonSerializable ( typeof ( PendingMessagesModifiedEvent ) ) ]
2056+ [ JsonSerializable ( typeof ( PermissionCompletedData ) ) ]
2057+ [ JsonSerializable ( typeof ( PermissionCompletedEvent ) ) ]
2058+ [ JsonSerializable ( typeof ( PermissionRequestedData ) ) ]
2059+ [ JsonSerializable ( typeof ( PermissionRequestedEvent ) ) ]
19002060[ JsonSerializable ( typeof ( SessionCompactionCompleteData ) ) ]
19012061[ JsonSerializable ( typeof ( SessionCompactionCompleteDataCompactionTokensUsed ) ) ]
19022062[ JsonSerializable ( typeof ( SessionCompactionCompleteEvent ) ) ]
@@ -1978,6 +2138,10 @@ public enum SystemMessageDataRole
19782138[ JsonSerializable ( typeof ( ToolExecutionStartEvent ) ) ]
19792139[ JsonSerializable ( typeof ( ToolUserRequestedData ) ) ]
19802140[ JsonSerializable ( typeof ( ToolUserRequestedEvent ) ) ]
2141+ [ JsonSerializable ( typeof ( UserInputCompletedData ) ) ]
2142+ [ JsonSerializable ( typeof ( UserInputCompletedEvent ) ) ]
2143+ [ JsonSerializable ( typeof ( UserInputRequestedData ) ) ]
2144+ [ JsonSerializable ( typeof ( UserInputRequestedEvent ) ) ]
19812145[ JsonSerializable ( typeof ( UserMessageData ) ) ]
19822146[ JsonSerializable ( typeof ( UserMessageDataAttachmentsItem ) ) ]
19832147[ JsonSerializable ( typeof ( UserMessageDataAttachmentsItemDirectory ) ) ]
0 commit comments