// Code generated by Microsoft Kiota - DO NOT EDIT.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.

package models
// Types of reactions to conversation messages.
type EngagementConversationMessageReactionType int

const (
    // Like reaction, represented as a thumbs-up hand. A positive sentiment.
    LIKE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE EngagementConversationMessageReactionType = iota
    // Love reaction, represented as a solid heart shape. A very positive sentiment.
    LOVE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Celebrate reaction, represented as a party hat. A positive sentiment.
    CELEBRATE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Thank reaction, represented as applauding hands. A positive sentiment.
    THANK_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Laugh reaction, represented as a grinning face. A positive sentiment.
    LAUGH_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Sad reaction, represented as a frowning face. A sympathetic sentiment.
    SAD_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Happy reaction, represented as an open mouth smile face. A very positive sentiment.
    HAPPY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Excited reaction, represented as a face with closed eyes and a big smile. A very positive sentiment.
    EXCITED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Smiling reaction, represented as a face with a small smile. A positive sentiment.
    SMILE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Silly reaction, represented as an upside down smiling face. A positive sentiment.
    SILLY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Intense laughter reaction, represented as a crying laughing face. A very positive sentiment.
    INTENSELAUGH_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Star struck reaction, represented as a face with stars for eyes. A very positive sentiment.
    STARSTRUCK_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Goofy reaction, represented as a face with tongue sticking out of mouth. A positive sentiment.
    GOOFY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Thinking reaction, represented as a face with a hand on the chin. A neutral sentiment.
    THINKING_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Surprised reaction, represented as a face with its mouth open. A neutral sentiment.
    SURPRISED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Mind blown reaction, represented as a face with its head covered in an exploding cloud. A positive sentiment.
    MINDBLOWN_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Scared reaction, represented as a face with fearful look. A negative sentiment.
    SCARED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Crying reaction, represented as a face with tears streaming down. A negative sentiment.
    CRYING_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Shocked reaction, represented as a face with two hands against cheeks and mouth open. A negative sentiment.
    SHOCKED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Angry reaction, represented as a face with furrowed eyebrows and sad mouth. A very negative sentiment.
    ANGRY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Agree reaction, represented as a hand pointing upward. A positive sentiment.
    AGREE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Praise reaction, represented as two hands facing outward. A positive sentiment.
    PRAISE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Taking notes reaction, represented as a hand holding a pen. A neutral sentiment.
    TAKINGNOTES_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Heart broken reaction, represented as a broken heart. A negative sentiment.
    HEARTBROKEN_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Support reaction, represented as red numbers showing 100. A positive sentiment.
    SUPPORT_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Confirmed reaction, represented as a green check mark. A neutral sentiment.
    CONFIRMED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Watching reaction, represented as two eyeballs. A neutral sentiment.
    WATCHING_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Brain reaction, represented as a brain. A neutral sentiment.
    BRAIN_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Medal reaction, represented as a medal hanging from a sash. A positive sentiment.
    MEDAL_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // Bullseye reaction, represented as a target with an arrow in the middle. A positive sentiment.
    BULLSEYE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    // A marker value for members added after the release of this API.
    UNKNOWNFUTUREVALUE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
)

func (i EngagementConversationMessageReactionType) String() string {
    return []string{"like", "love", "celebrate", "thank", "laugh", "sad", "happy", "excited", "smile", "silly", "intenseLaugh", "starStruck", "goofy", "thinking", "surprised", "mindBlown", "scared", "crying", "shocked", "angry", "agree", "praise", "takingNotes", "heartBroken", "support", "confirmed", "watching", "brain", "medal", "bullseye", "unknownFutureValue"}[i]
}
func ParseEngagementConversationMessageReactionType(v string) (any, error) {
    result := LIKE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
    switch v {
        case "like":
            result = LIKE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "love":
            result = LOVE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "celebrate":
            result = CELEBRATE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "thank":
            result = THANK_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "laugh":
            result = LAUGH_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "sad":
            result = SAD_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "happy":
            result = HAPPY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "excited":
            result = EXCITED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "smile":
            result = SMILE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "silly":
            result = SILLY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "intenseLaugh":
            result = INTENSELAUGH_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "starStruck":
            result = STARSTRUCK_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "goofy":
            result = GOOFY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "thinking":
            result = THINKING_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "surprised":
            result = SURPRISED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "mindBlown":
            result = MINDBLOWN_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "scared":
            result = SCARED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "crying":
            result = CRYING_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "shocked":
            result = SHOCKED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "angry":
            result = ANGRY_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "agree":
            result = AGREE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "praise":
            result = PRAISE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "takingNotes":
            result = TAKINGNOTES_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "heartBroken":
            result = HEARTBROKEN_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "support":
            result = SUPPORT_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "confirmed":
            result = CONFIRMED_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "watching":
            result = WATCHING_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "brain":
            result = BRAIN_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "medal":
            result = MEDAL_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "bullseye":
            result = BULLSEYE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        case "unknownFutureValue":
            result = UNKNOWNFUTUREVALUE_ENGAGEMENTCONVERSATIONMESSAGEREACTIONTYPE
        default:
            return nil, nil
    }
    return &result, nil
}
func SerializeEngagementConversationMessageReactionType(values []EngagementConversationMessageReactionType) []string {
    result := make([]string, len(values))
    for i, v := range values {
        result[i] = v.String()
    }
    return result
}
func (i EngagementConversationMessageReactionType) isMultiValue() bool {
    return false
}
