'use static'
/*
* Copyright (c) 2026 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License"),
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @file
* @kit AbilityKit
*/
import insightIntent from './@ohos.app.ability.insightIntent';
/**
* Enum definition of the paramCategory {@link #LinkIntentParamMapping#paramCategory},
* paramCategory is an attribute of LinkIntentParamMapping and
* used in InsightIntentLink {@link #InsightIntentLink}.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export declare enum LinkParamCategory {
/**
* The parameter will added to the end of link uri.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
LINK = 'link',
/**
* The parameter will transferred to the application as parameters of want.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
WANT = 'want'
}
/**
* Declare interface of LinkIntentParamMapping.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export declare interface LinkIntentParamMapping {
/**
* The parameter name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
paramName: string;
/**
* The parameter mapping name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
paramMappingName?: string;
/**
* The parameter category.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
paramCategory?: LinkParamCategory;
}
/**
* Define InsightIntentLink Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentLink {
/**
* The intent name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentName: string;
/**
* The intent domain.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
domain: string;
/**
* The intent version.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentVersion: string;
/**
* The display name of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayName: string;
/**
* The display description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayDescription: string = '';
/**
* The schema of intent, indicates a standard intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
schema: string = '';
/**
* The icon of intent, the string type indicates an online resource or a local resource.
* For example, "$r('app.media.startIcon')".
* The value of Resource type must be a literal.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
icon: string = '';
/**
* The large language model description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
llmDescription: string = '';
/**
* The search keywords of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
keywords: string[] = [];
/**
* The parameters of intent.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
parameters: string = '';
/**
* The type definition of the result returned by intent call.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
result: string = '';
/**
* The uri of a link.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
uri: string;
/**
* The parameters mapping of a link.
* The value is the name of a variable of type LinkIntentParamMapping[].
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
paramMappings: string = '';
}
/**
* Define InsightIntentPage Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentPage {
/**
* The intent name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentName: string;
/**
* The intent domain.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
domain: string;
/**
* The intent version.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentVersion: string;
/**
* The display name of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayName: string;
/**
* The display description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayDescription: string = '';
/**
* The schema of intent, indicates a standard intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
schema: string = '';
/**
* The icon of intent, the string type indicates an online resource or a local resource.
* For example, "$r('app.media.startIcon')".
* The value of Resource type must be a literal.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
icon: string = '';
/**
* The large language model description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
llmDescription: string = '';
/**
* The search keywords of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
keywords: string[] = [];
/**
* The parameters of intent.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
parameters: string = '';
/**
* The type definition of the result returned by intent call.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
result: string = '';
/**
* The uiAbility name bound to the intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
uiAbility: string = '';
/**
* The page path bound to the intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
pagePath: string;
/**
* The navigation Id bound to the intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
navigationId: string = '';
/**
* The navigation destination name bound to the intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
navDestinationName: string = '';
}
/**
* Define InsightIntentFunction Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentFunction { }
/**
* Define InsightIntentFunctionMethod Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentFunctionMethod {
/**
* The intent name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentName: string;
/**
* The intent domain.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
domain: string;
/**
* The intent version.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentVersion: string;
/**
* The display name of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayName: string;
/**
* The display description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayDescription: string = '';
/**
* The schema of intent, indicates a standard intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
schema: string = '';
/**
* The icon of intent, the string type indicates an online resource or a local resource.
* For example, "$r('app.media.startIcon')".
* The value of Resource type must be a literal.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
icon: string = '';
/**
* The large language model description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
llmDescription: string = '';
/**
* The search keywords of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
keywords: string[] = [];
/**
* The parameters of intent.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
parameters: string = '';
/**
* The type definition of the result returned by intent call.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
result: string = '';
}
/**
* Define InsightIntentForm Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentForm {
/**
* The intent name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentName: string;
/**
* The intent domain.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
domain: string;
/**
* The intent version.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentVersion: string;
/**
* The display name of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayName: string;
/**
* The display description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayDescription: string = '';
/**
* The schema of intent, indicates a standard intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
schema: string = '';
/**
* The icon of intent, the string type indicates an online resource or a local resource.
* For example, "$r('app.media.startIcon')".
* The value of Resource type must be a literal.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
icon: string = '';
/**
* The large language model description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
llmDescription: string = '';
/**
* The search keywords of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
keywords: string[] = [];
/**
* The parameters of intent.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
parameters: string = '';
/**
* The type definition of the result returned by intent call.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
result: string = '';
/**
* The form name bound to the intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
formName: string;
}
/**
* Define InsightIntentEntry Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentEntry {
/**
* The intent name.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentName: string;
/**
* The intent domain.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
domain: string;
/**
* The intent version.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
intentVersion: string;
/**
* The display name of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayName: string;
/**
* The display description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
displayDescription: string = '';
/**
* The schema of intent, indicates a standard intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
schema: string = '';
/**
* The icon of intent, the string type indicates an online resource or a local resource.
* For example, "$r('app.media.startIcon')".
* The value of Resource type must be a literal.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
icon: string = '';
/**
* The large language model description of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
llmDescription: string = '';
/**
* The search keywords of intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
keywords: string[] = [];
/**
* The parameters of intent.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
parameters: string = '';
/**
* The type definition of the result returned by intent call.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
result: string = '';
/**
* The ability name bound to the intent.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
abilityName: string;
/**
* The execute mode of the intent.
* For UIAbility, the parameter can be set to insightIntent.ExecuteMode.UI_ABILITY_FOREGROUND or
* insightIntent.ExecuteMode.UI_ABILITY_BACKGROUND or both of them.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
executeMode: insightIntent.ExecuteMode[];
}
/**
* Define InsightIntentEntity Annotation.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
export @interface InsightIntentEntity {
/**
* The entity category.
*
* @type { string }
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
entityCategory: string;
/**
* The parameters of intent entity.
* The value is the name of a variable of type Record<string, RecordData>.
*
* @type { string }
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
parameters: string = "";
/**
* Supported query properties.
*
* @syscap SystemCapability.Ability.AbilityRuntime.Core
* @stagemodelonly
* @since 26.0.0 static
*/
supportedQueryProperties: string[] = [];
}