The only restriction is on importing SWF's, but with exporting theres no restriction, except for the fact that the specification is extremely difficult to get a hang of :/ . Unfortunately there are no complete open source projects out there that can do what Flash does.
However, you can use FlashDevelop with the Flex SDK to build SWF files for free using code. I've used them both quite successfully to build a flash FLV player for my website, so it's definitely up to par. The only downside of course is that you do not get a WYSIWYG editor along with your code.
FlashDevelop
Flex 3 SDK
The way I installed them both was by installing first the Flex SDK, to C:\flex_sdk_3 , and then FlashDevelop. FlashDevelop was able to detect the installation of flex so that I could use it immediately.