/** * Plugin management operations for developing and deploying signageOS plugins. * * Plugins extend native signageOS features and integrate with system policies. * They run periodically to ensure configuration is consistently enforced on devices. * * Plugins must implement `set` and `get` methods. * Upload reads `.sosconfig.json` for configuration. * * @group Development:102 * * @example * ```bash * # Generate a new plugin project interactively * sos plugin generate * * # Generate plugin with all parameters (non-interactive, suitable for CI/CD) * sos plugin generate --name my-plugin --description "Custom functionality" --yes * * # Upload plugin to signageOS platform * sos plugin upload * * # Upload plugin non-interactively (for CI/CD pipelines) * sos plugin upload --yes * * # Upload with specific organization * sos plugin upload --organization-uid abc123def456 * ``` * * @since 2.6.0 */ export declare const plugin: { name: "plugin"; description: string; optionList: never[]; commands: ({ name: "generate"; description: string; optionList: readonly [{ readonly name: "name"; readonly type: StringConstructor; readonly description: "Plugin name"; }, { readonly name: "description"; readonly type: StringConstructor; readonly description: "Plugin description"; }, { readonly name: "yes"; readonly type: BooleanConstructor; readonly description: "Skip confirmation prompts and use provided values"; }]; commands: never[]; run(options: import("../Command/commandDefinition").CommandLineOptions): Promise; } | { name: "upload"; description: string; optionList: readonly [{ readonly name: "no-default-organization"; readonly type: BooleanConstructor; readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc"; }, { readonly name: "organization-uid"; readonly type: StringConstructor; readonly description: "Organization UID"; }, { readonly name: "yes"; readonly type: BooleanConstructor; readonly description: "Skip confirmation prompts for plugin or version creation"; }]; commands: never[]; run(options: import("../Command/commandDefinition").CommandLineOptions): Promise; })[]; run(): Promise; };