import * as pulumi from "@pulumi/pulumi"; import * as outputs from "./types/output"; /** * Retrieves a listing of config items. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * function tryOutput_( * ...fns: Array<() => pulumi.Input> * ): pulumi.Output { * if (fns.length === 0) { * throw new Error("try: all parameters failed"); * } * const [fn, ...rest] = fns; * try { * return pulumi.output(fn()).apply(result => result !== undefined ? result : tryOutput_(...rest)); * } catch { * return tryOutput_(...rest); * } * throw new Error("try: all parameters failed"); * } * * * // This data source will call the "List" API endpoint * // and return all forwarding profile source applications in the "Mobile Users" folder. * // 1. Use a single data block to fetch ALL forwarding profile source applications in the "Mobile Users" folder. * const mobileUsers = scm.getForwardingProfileSourceApplicationList({ * folder: "Mobile Users", * }); * export const forwardingProfileSourceApplicationsRawData = tryOutput_( * () => mobileUsers, * () => null * ); * // Simplified pagination example with error handling * const paginatedExample = scm.getForwardingProfileSourceApplicationList({ * folder: "Mobile Users", * limit: 5, * offset: 0, * }); * export const paginatedForwardingProfileSourceApplications = tryOutput_( * () => paginatedExample.then(paginatedExample => .reduce((__obj, app) => ({ ...__obj, [app.id]: app }), {})), * () => {} * ); * export const paginationDetails = tryOutput_( * () => { * totalObjectsInFolder: paginatedExample.then(paginatedExample => paginatedExample.total), * limitUsed: paginatedExample.then(paginatedExample => paginatedExample.limit), * offsetUsed: paginatedExample.then(paginatedExample => paginatedExample.offset), * }, * () => {} * ); * ``` */ export declare function getForwardingProfileSourceApplicationList(args?: GetForwardingProfileSourceApplicationListArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getForwardingProfileSourceApplicationList. */ export interface GetForwardingProfileSourceApplicationListArgs { /** * The device of the item. */ device?: string; /** * The folder of the item. Default: Shared. */ folder?: string; /** * The max number of items to return. Default: 200. */ limit?: number; /** * The name of the item. */ name?: string; /** * The offset of the first item to return. */ offset?: number; /** * The snippet of the item. */ snippet?: string; } /** * A collection of values returned by getForwardingProfileSourceApplicationList. */ export interface GetForwardingProfileSourceApplicationListResult { /** * The data. */ readonly datas: outputs.GetForwardingProfileSourceApplicationListData[]; /** * The device of the item. */ readonly device?: string; /** * The folder of the item. Default: Shared. */ readonly folder?: string; /** * The max number of items to return. Default: 200. */ readonly limit?: number; /** * The name of the item. */ readonly name?: string; /** * The offset of the first item to return. */ readonly offset?: number; /** * The snippet of the item. */ readonly snippet?: string; /** * The Terraform ID. */ readonly tfid: string; /** * The total number of items. */ readonly total: number; } /** * Retrieves a listing of config items. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * function tryOutput_( * ...fns: Array<() => pulumi.Input> * ): pulumi.Output { * if (fns.length === 0) { * throw new Error("try: all parameters failed"); * } * const [fn, ...rest] = fns; * try { * return pulumi.output(fn()).apply(result => result !== undefined ? result : tryOutput_(...rest)); * } catch { * return tryOutput_(...rest); * } * throw new Error("try: all parameters failed"); * } * * * // This data source will call the "List" API endpoint * // and return all forwarding profile source applications in the "Mobile Users" folder. * // 1. Use a single data block to fetch ALL forwarding profile source applications in the "Mobile Users" folder. * const mobileUsers = scm.getForwardingProfileSourceApplicationList({ * folder: "Mobile Users", * }); * export const forwardingProfileSourceApplicationsRawData = tryOutput_( * () => mobileUsers, * () => null * ); * // Simplified pagination example with error handling * const paginatedExample = scm.getForwardingProfileSourceApplicationList({ * folder: "Mobile Users", * limit: 5, * offset: 0, * }); * export const paginatedForwardingProfileSourceApplications = tryOutput_( * () => paginatedExample.then(paginatedExample => .reduce((__obj, app) => ({ ...__obj, [app.id]: app }), {})), * () => {} * ); * export const paginationDetails = tryOutput_( * () => { * totalObjectsInFolder: paginatedExample.then(paginatedExample => paginatedExample.total), * limitUsed: paginatedExample.then(paginatedExample => paginatedExample.limit), * offsetUsed: paginatedExample.then(paginatedExample => paginatedExample.offset), * }, * () => {} * ); * ``` */ export declare function getForwardingProfileSourceApplicationListOutput(args?: GetForwardingProfileSourceApplicationListOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getForwardingProfileSourceApplicationList. */ export interface GetForwardingProfileSourceApplicationListOutputArgs { /** * The device of the item. */ device?: pulumi.Input; /** * The folder of the item. Default: Shared. */ folder?: pulumi.Input; /** * The max number of items to return. Default: 200. */ limit?: pulumi.Input; /** * The name of the item. */ name?: pulumi.Input; /** * The offset of the first item to return. */ offset?: pulumi.Input; /** * The snippet of the item. */ snippet?: pulumi.Input; } //# sourceMappingURL=getForwardingProfileSourceApplicationList.d.ts.map