import { Value } from '../../cloudformation/Value';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
/**
  In a CloudFormation template, you use the <code>AWS::CloudFormation::CustomResource</code> or <code>Custom::String </code> resource type to specify custom resources.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html">the AWS Docs</a>
*/
export type CustomResource = AwsResource<'AWS::CloudFormation::CustomResource', CustomResourceProperties>;
export declare function customResource(customResourceProps: CustomResourceProperties): CustomResource;
/**
  In a CloudFormation template, you use the <code>AWS::CloudFormation::CustomResource</code> or <code>Custom::String </code> resource type to specify custom resources.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html">the AWS Docs</a>
*/
export interface CustomResourceProperties {
    /** <code>ServiceToken</code>  <a name="cfn-customresource-servicetoken"></a>
  Only one property is defined by AWS for a custom resource: <code>ServiceToken</code>. All other properties are defined by the service provider.
  The service token that was given to the template developer by the service provider to access the service, such as an Amazon SNS topic ARN or Lambda function ARN. The service token must be from the same Region in which you are creating the stack.<br />
  Updates aren’t supported.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    serviceToken: Value<string>;
}
