Variable DirectThreadActionStateSchemaConst
DirectThreadActionStateSchema: Union<
readonly [
Struct<
{
is_group: Boolean;
kind: Literal<"thread">;
peer_user_id: optionalKey<String>;
send_attribution: optionalKey<String>;
thread_id: String;
thread_title: String;
thread_v2_id: String;
},
>,
Struct<
{
kind: Literal<"compose">;
recipient_user_id: String;
send_attribution: optionalKey<String>;
},
>,
],
> = ...
What a thread's actions need, a sum by the visit's state:
thread: a conversation that exists — the ids the existing-thread requests send and the attribution its messages report;compose: a picked recipient whose conversation the first message will create — the recipient the broadcast targets until then. Reading a thread id here is a type error, so an action that needs one cannot silently send with a missing id.