mattermost-mobile/types/launch/index.ts
Daniel Espino García a341ef8981
Easy Login (#9261)
* Login screen for easy login

* Deep link changes

* Fix login flow

* Address feedback

* Rebranding

* Add deactivated flow

* Apply changes to the get type API

* Address feedback
2025-11-20 12:38:06 +01:00

66 lines
1.6 KiB
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import type {DeepLink as DeepLinkConstant, Launch} from '@constants';
export interface DeepLink {
serverUrl: string;
teamName: string;
}
export interface DeepLinkServer {
serverUrl: string;
}
export interface DeepLinkChannel extends DeepLink {
channelName: string;
}
export interface DeepLinkDM extends DeepLink {
userName: string;
}
export interface DeepLinkPermalink extends DeepLink {
postId: string;
}
export interface DeepLinkGM extends DeepLink {
channelName: string;
}
export interface DeepLinkPlugin extends DeepLink {
id: string;
route?: string;
}
export interface DeepLinkPlaybooks extends DeepLink {
playbookId: string;
}
export interface DeepLinkPlaybookRuns extends DeepLink {
playbookRunId: string;
}
export interface DeepLinkMagicLink extends DeepLink {
serverUrl: string;
token: string;
}
export type DeepLinkType = typeof DeepLinkConstant[keyof typeof DeepLinkConstant];
export interface DeepLinkWithData {
type: DeepLinkType;
url: string;
data?: DeepLinkChannel | DeepLinkDM | DeepLinkGM | DeepLinkPermalink | DeepLinkPlugin | DeepLinkServer | DeepLinkPlaybooks | DeepLinkPlaybookRuns | DeepLinkMagicLink;
}
export type LaunchType = typeof Launch[keyof typeof Launch];
export interface LaunchProps {
extra?: DeepLinkWithData | NotificationWithData;
launchType: LaunchType;
launchError?: Boolean;
serverUrl?: string;
displayName?: string;
coldStart?: boolean;
}